Mysql是最流行的关系型数据库,在web应用方面是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一

MySql中的数据类型

MySql支持所有标准Sql数值类型

数值类型:

类型 大小 范围(有符号) 范围(无符号) 用途
TINYINT 1字节 (-128,127) (0,255) 小整数值
SMALLINT 2字节 (-32 768,32 767) (0,65 535) 大整数值
MEDIUMINT 3字节 (-8 388 608,8 388 607) (0,16 777 215) 大整数值
INT或INTEGER 4字节 (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
BIGINT 8字节 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
FLOAT 4字节 (-3.402 823 466 E+38,1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) 0,(1.175 494 351 E-38,3.402 823 466 E+38) 单精度 浮点数值
DOUBLE 8 字节 (1.797 693 134 862 315 7 E+308,2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 双精度 浮点数值
DECIMAL 对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2 依赖于M和D的值 依赖于M和D的值 小数值

日期和时间类型:

类型 大小 范围(有符号) 格式 用途
DATE 3 1000-01-01/9999-12-31 YYYY-MM-DD 日期值
TIME 3 ‘-838:59:59’/‘838:59:59’ HH:MM:SS 时间值或持续时间
YEAR 1 1901/2155 YYYY 年份值
DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS 混合日期和时间值
TIMESTAMP 8 1970-01-01 00:00:00/2037 年某时 YYYYMMDD HHMMSS 混合日期和时间值,时间戳

字符串类型:

类型 大小 用途
CHAR 0-255字节 定长字符串
VARCHAR 0-65535 字节 变长字符串
TINYBLOB 0-255字节 不超过 255 个字符的二进制字符串
TINYTEXT 0-255字节 短文本字符串
BLOB 0-65 535字节 二进制形式的长文本数据
TEXT 0-65 535字节 长文本数据
MEDIUMBLOB 0-16 777 215字节 二进制形式的中等长度文本数据
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据
LOGNGBLOB 0-4 294 967 295字节 二进制形式的极大文本数据
LONGTEXT 0-4 294 967 295字节 极大文本数据

MySql中的函数

由于Mysql中存在多种函数,这里只做简单的介绍 关于日期相关的函数,更多函数的介绍可以参考Mysql函数

DATE_ADD() 函数向日期添加指定的时间间隔。

1
DATE_ADD(date,INTERVAL expr type)

DATE_SUB() 函数从日期减去指定的时间间隔。

1
DATE_SUB(date,INTERVAL expr type)

DATEDIFF() 函数返回两个日期之间的天数。

1
DATEDIFF(date1,date2)

DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。

1
DATE_FORMAT(date,format)

NOW() 返回当前的日期和时间。

1
NOW()

CURDATE() 返回当前的日期。

1
CURDATE()

CURTIME() 返回当前的时间。

1
CURTIME()

DATE() 函数提取日期或日期/时间表达式的日期部分。

1
DATE(date)

EXTRACT() 函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。

1
EXTRACT(unit FROM date)