1、字符函数
CONCAT('a','-','b','-','c')效果等同于CONCAT_WS('-','a','b','c')
FORMAT()的返回结果是字符型,会对操作数四舍五入,如:SELECT FORMAT(723.216,2)的结果是保留小数后两位,723.22
LEFT('MySQL',2)意思是取MySQL的前两个字符,即'My'
LENGTH()会将空格的长度也计算在内
TRIM()除了可以删除空格,还可以删除指定字符:
TRIM(LEADING '?' FROM '??MySQL???') 删除前导问号 结果是MySQL???
TRIM(TRAILING '?' FROM '??MySQL???') 删除后续问号 结果是??MySQL
TRIM(BOTH '?' FROM '??MySQL???') 删除前导和后续问号 结果是MySQL
要删除中间的字符串可以用替换REPLACE('??My??SQL??','?','')
SUBSTRING('MySQL',2,3)代表从第2位开始截断,取3位,结果是SQL
SUBSTRING('MySQL',2)省略截取位数,则从第2为截断,取至末尾,结果是SQL
SUBSTRING('MySQL',-2)负数代表从末尾倒数,结果为QL
SELECT 'MySQL' LIKE 'M%' 百分号(%)代表任意个字符,下划线(_)代表任意一个字符,这条语句的意思是判断MySQL中是否与M%相似,返回值为true,显示结果为1
SELECT 'My%SQL' LIKE '%1%%' ESCAPE '1' 此处不能使用'%%%' ,而必须采用ESCAPE这种方式来使中间的百分号具有字符意义
2、数值运算符与函数
3 DIV 4 结果为0
MOD与%作用一样,都是取模
POWER(3,3) 结果为27
ROUND(3.625,0)保留到小数点后0位,结果为4
TRUNCATE(351.67,1)截取小数点后1位,结果为351.6
TRUNCATE(351.67,-2)结果为300
3、比较运算符和函数
SELECT 15 BETWEEN 1 AND 20 判断15是否在1~20中,显示结果为1
SELECT 12 IN(1,7,12,18) 判断12是否在列出值中
4、日期时间函数
DATE_ADD('2014-2-12',INTERVAL -365 DAY) 结果是2013-2-12 常见单位有:WEEK DAY YEAR MONTH
DATEDIFF('2014-2-12','2015-2-12') 结果是-365
DATE_FORMAT(date,format)
根据format字符串格式化date值,如:DATE_FORMAT(NOW(),'%m/%/d%/Y') 结果为03/04/2015
(在format字符串中可用标志符:
%M 月名字(January……December)
%W 星期名字(Sunday……Saturday)
%D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)
%Y 年, 数字, 4 位
%y 年, 数字, 2 位
%a 缩写的星期名字(Sun……Sat)
%d 月份中的天数, 数字(00……31)
%e 月份中的天数, 数字(0……31)
%m 月, 数字(01……12)
%c 月, 数字(1……12)
%b 缩写的月份名字(Jan……Dec)
%j 一年中的天数(001……366)
%H 小时(00……23)
%k 小时(0……23)
%h 小时(01……12)
%I 小时(01……12)
%l 小时(1……12)
%i 分钟, 数字(00……59)
%r 时间,12 小时(hh:mm:ss [AP]M)
%T 时间,24 小时(hh:mm:ss)
%S 秒(00……59)
%s 秒(00……59)
%p AM或PM
%w 一个星期中的天数(0=Sunday ……6=Saturday )
%U 星期(0……52), 这里星期天是星期的第一天
%u 星期(0……52), 这里星期一是星期的第一天
%% 字符% )
5、信息函数
要使用LASR_INSERT_ID(),必须保证表中有AUTO_INCREMENT的字段;当一次插入多条记录时,显示第一条记录的ID号
6、聚合函数
特点:只有一个返回值
7、加密函数
PASSWORD()的用途是更改数据库登录密码,如: SET PASSWORD=PASSWORD('@oa123');