写在最前
当初学习SQL语言,像八戒吞人生果,不知SQL语言何味?一些关键字段在应用的过程中常常张冠李戴 ,经过一段的细嚼慢咽,品味出了一些劲道.先将其整理一番,以免日后再三(事(四)不过三,学习、练习已犯其二)犯事。
那些颠三倒四的事
CHANGE 和 MODIFY
CHANGE字段 : 修改字段名,也可用于修改数据类型,修改数据类型时,将新旧字段设置成相同的名称;
MODIFY : 修改数据名称.
浮点型(FLOAT 和 DOUBLE)和定点型(DECIMAL)
在长度一样的情况下,FLOAT和DOUBLE型数据相对于定点型数据可以表示更大范围的数据范围,但对两个浮点型数据做加减运算时,容易出现精度损失的问题;
在对精度要求较高的情况(货币和科学计数)下,宜使用定点数据类型.
两位整数范围和字符串范围在YEAR字段中的应用.
数字0表YEAR字段,实际上插入的是值为: 0000 ;
字符串格式的”0”或者”00”表YEAR字段,实际上插入的值是 : 2000.
在MySQL中”:”在TIME字段列的作用
无”:”,MySQL解释最右边的两个数过去的时间,比如插入字段TIME值“1212”,MySQL解释为 : 00:12:12;
带”:”,MySQL解释为当天的时间,举个栗子,插入字段TIME值“12:12”,MySQL解释为 : 12:12:00.
DATETIME 和 TIMESTAMP
DATATIME存储日期按照实际输入的格式进行存储,与时区无关;
TIMESTAMP按照UTC(世界标准时间)格式进行存储,存储对当前时区进行转换,检索时再返回当前时区.
ROUND()和TRUNCATE()
ROUND()函数在截取值的时候进行四舍五入;
TRUNCATE()函数对数值进行直接截取.
HAVING和WHERE
HAVING在数据分组后进行过滤分组;
WHERE在分组之前用来选择记录.
UNION和UNION ALL
UNION合并查询结果时删除重复行;
UNION ALL合并查询结果,保留所有的结果.
正则表达式中的”+”和”*”
“+” 至少匹配一个元素;
“*” 可以匹配0个元素.
更新中…