mysql 有十进制类型吗_MySQL数据类型

MySQL之数据类型

MySQL常见的数据类型有数值、日期和时间、字符串

数值

整数类型(精确值)

Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT

int

tinyint

bigint

f2df1350d87cd852221a6158e4c0e20b.png

不动点类型(精确值)-十进制,数字

Fixed-Point Types (Exact Value) - DECIMAL, NUMERIC

DECIMAL(5,2): 5代表精度,2代表刻度;表示该列总共可以存储5位数字,精确到小数点后2位;

存储范围: -999.99 ~ 999.99

NUMERIC就是NUMERIC

说明:精度是几,小数点+整数位不能超过前面的精度。

decimal(0) 默认是decimal(10,0)

浮点类型(近似值)-浮动

Floating-Point Types (Approximate Value) - FLOAT, DOUBLE

float 存储 4bytes

float(7,4)就会看到这样:-999.9999的显示。MySQL进行舍入时存储的值,所以如果你插入999.00009成浮(7,4)柱,近似的结果是999.0001

If M and D are omitted, values are stored to the limits permitted by the hardware.

double 存储 8bytes

时间和日期

DATE:日期 'YYYY-MM-DD'. The supported range is '1000-01-01' to '9999-12-31'

DATETIME:日期时间组合 'YYYY-MM-DD HH:MM:SS' The supported range is '1000-01-01 00:00:00' to'9999-12-31 23:59:59'.

TIMESTAMP:时间戳 '1970-01-01 00:00:01.000000' UTC to '2038-01-19 03:14:07.999999'       注意:不能等于'1970-01-01 00:00:00'会归零;

TIME:时间 '-838:59:59.000000' to '838:59:59.000000'      注意:'11:12' means '11:12:00', not '00:11:12' ; '1112' and 1112 as meaning '11:12:00;默认情况下,超出范围的值会被自动转换成接近的值,eg:'-850:00:00' and '850:00:00' are converted to '-838:59:59' and '838:59:59';无效的的时间值会被转换成'00:00:00'

YEAR:range 1901 to 2155, or 0000    注意:YEAR(4) and YEAR(2)不同之处在于显示不同;eg:70 (1970 or 2070) or 69 (2069).

字符串

CHAR:0 to 255 定长,存储时用空格补齐;读取时删掉后面的空格,PAD_CHAR_TO_FULL_LENGTH sql模式开启

VARCHAR:0 to 65,535 可变长度

BLOB:保存二进制的大型数据(字节串),没有字符集,eg:图片、音频视频等

TEXT:保存非二进制字符串(字符串);有一个字符集

BINARY和VARBINARY:类似CHAR和VARCHAR;保存字节字符串,而不是字符字符串,这意味着它们没有字符集

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值