mysql数据库学习——5,数据类型,字符集和校对
1,数值类型
2,字符串类型
3,日期和时间
4,ENUM和SET
5,几何数据类型
数据类型选项
unsigned 无负值
zerofill 数值显示有影响,会前置0来填充不足位数的数据
auto_increment
serial default value==声明auto_increment not null
tinyint -128----127
smallint -32768----32767
mediumint -8388608-----8388607
int(integer) -2147483648----2147483647
bigint -9223372036854775808----9223372036854775807
浮点数
float 4字节 正负1.175494351E-38-----正负3.402823466E+38
double 8字节 正负2.2250738585072014E-308---正负1.7976931348623157E+308
定点数
DEC
DECIMAL
BIT
char 0-255
varchar 0-65535
tinyblob 0-255
blob 0-65535
mediumblob 0-167772150
longblob 0-4294967295
tinytext 0-255
text 0-65535
mediumtext 0-167772150
longtext 0-4294967295
二进制字符,只能是二进制的字符
varbinary 0-M
binary 0-M
date 1000-01-01----9999-12-31
datetime 1000-01-01-00:00:00----9999-12-31 23:59:59
time -838:59:59 ----838:59:59
year 1901----2155
timestamp 1970 10 10 80001----2038
与时间相关的函数
now current_timestamp sysdate
1,now和current_timestamp是同样的
2,sysdate函数返回执行当前函数时的时间,而now返回的事执行sql语句时的时间
时间加减
如果出现目标年份是闰月,会自动加减1天
date_add(date,interval expr unit)
date_sub(date,interval expr unit)
date_add(now(),interval 1 day)
unit 可以是如下数据
year
month
day
week
hour
minute
second
microsecond
select date_format(now() ,'%Y%m%d') as datetime ;