• 【MYSQL】数据类型


    1. 整型

    整型类型字节数有符号范围无符号范围
    TINYINT1字节(-128,127)(0,255)
    SMALLINT2字节(-32768,32767)(0,65 535)
    MEDIUMINT3字节(-226,226-1)(0,2^27-1)
    INT4字节(-231,231-1)(0,2^32-1)
    BIGINT8字节(-263,263-1)(0,2^64-1)

    可选参数:整型[(M)] [UNSIGNED] [ZEROFILL]

    • UNSIGNED:无符号数,例如:age TINYINT UNSIGNED;
    • ZEROFILL:其中参数M表示字节宽度,自动会转为无符号整型,一般适用于学号、编码等宽度无符号数字,可以用0填充,例如:sn TINYINT(6) ZEROFILL;

    2. 浮点型

    注意:浮点数有精度损失的。

    整型类型字节数有符号范围无符号范围
    FLOAT4字节(-3.40E+38, -1.17E-38)(0, 3.40E+38)
    DOUBLE8字节(-1.80E+308, -2.23E-308)(0, 2.23E+308)

    可选参数:浮点型[(M,D)] [UNSIGNED] [ZEROFILL]

    其中M表示显示的值(包括小数位)最大位数,D表示小数位数。 例如:sara FLOAT(7,3) 规定显示的值不会超过7位数字,小数点后面带有 3位数字。

    对于小数点后面的位数超过允许范围的值,MySQL 会自动将它四舍五入为最接近它的值。

    注意:浮点数有精度损失的。

    3. 定点型

    把整数和小数部分分开存储,比较精确。可选参数:DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]

    示例:sara DECIMAL(6,2);

    4. 字符串

    字符串类型字节数描述及存储需求
    CHAR0~255定长字符串
    VARCHAR0~255变长字符串
    TINYBLOB0~255不超过 255 个字符的二进制字符串
    TINYTEXT0~255短文本字符串
    BLOB0~65535二进制形式的长文本数据
    TEXT0~65535长文本数据
    MEDIUMBLOB0~2^24-1二进制形式的中等长度文本数据
    MEDIUMTEXT0~2^24-1中等长度文本数据
    LOGNGBLOB0~2^32-1二进制形式的极大文本数据
    LONGTEXT0~2^32-1极大文本数据

    注意:

    • char型,如果不够M个字符,内部用空格补齐,取出时会把右侧空格删除,意味着本身有的空格会被丢弃。varchar类型则不会。
    • 速度上定长比不定长的更快。
    • blob是二进制类型,用来储存图像、音频等类型。可以防止字符集问题导致信息丢失。

    5. 枚举和集合

    • 枚举:ENUM(‘value1’,‘value2’,…),插入值时,只能在枚举范围中的一个。
    • 集合:SET(‘value1’,‘value2’,…),插入值时,值是在集合的一个或多个。

    6. 日期时间类型

    类型字节数范围格式
    DATE41000-01-01~9999-12-31YYYY-MM-DD
    TIME3‘00:00:00’~’23:59:59’HH:MM:SS
    YEAR11901~2155YYYY
    DATETIME81000-01-01 00:00:00~9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS
    TIMESTAMP41970-01-01 00:00:00~2037年某时YYYY-MM-DD HH:MM:SS

    注意:TIMESTAMP是系统自动填充的时间戳,效率不高,不建议使用,通常用int unsigned来储存时间戳。

    # 获取时间戳
    SELECT UNIX_TIMESTAMP() ; #当前时间戳1451588688
    SELECT UNIX_TIMESTAMP('2016-01-01 00:00:00');
    
    # 把日期时间转为时间戳
    SELECT FROM_UNIXTIME(1451588888, '%Y-%m-%d %h:%i:%s'); # 2016-01-01 03:08:08
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
  • 相关阅读:
    Cpp浅析系列-STL之queue
    冯唐成事心法笔记 —— 知世
    数据挖掘与分析课程笔记(目录)
    【rust】cargo的概念和使用方法
    输入电压转化为电流性 5~20mA方案
    堪称一绝!阿里技术人都用的 Nginx 笔记手册,应用到架构齐全
    运维 | 如何在 Linux 系统中删除软链接 | Linux
    vue传递给后端时间格式问题
    第十五届蓝桥杯c++b组赛后复盘和真题展示
    Mysql连接与存储
  • 原文地址:https://blog.csdn.net/u013301892/article/details/126572544