分类
- 字符函数
- 数值运算符与函数
- 比较运算符与函数
- 日期时间函数
- 信息函数
- 聚合函数
- 加密函数
字符函数
- CONTACT() 字符连接
- SELECT CONTACT('HELLO','WORLD'); 连接'HELLO'和'WORLD'
- 多个字符也可以
- CONTACT_WS() 使用指定的分隔符进行字符连接
- CONTACT_WS('分隔符','文字','文字'...)
- CONTACT_WS('-','HELLO','WORLD')
- FORMAT() 数字格式化
- SELECT FORMAT(12560.743,2) => '12,560.75'
- LOWER() 转换成小写字母
- UPPER() 转换成大写字母
- LEFT() 获取左侧字符
- SELECT LEFT('MySQL', 2) => 'My'
- RIGHT() 获取右侧字符
- LENGTH()
- LTRIM() 删除前导空格
- RTRIM() 删除后续空格
- TRIM() 删除前后空格
- 可带参数
- TRIM(LEADING '?' FROM '??MySQL???') => 'MySQL???'
- TRIM(TRAILING '?' FROM '??MySQL???') => '??MySQL'
- TRIM(BOTH '?' FROM '??MySQL???') => 'MySQL' 中间的无法去掉,全部替换用REPLACE
- 可带参数
- SUBSTRING() 字符串截取
- SUBSTRING('MySQL',1,2) => My 从1开始计
- [NOT] LIKE 模式匹配
- REPLACE() 字符串替换
数值运算符与函数
- CEIL() 向上取整,进一取整
- CEIL(3.01) => 4
- DIV
- FLOOR() 向下取整
- FLOOR(3.99) => 3
- MOD 取模
- POWER() 幂运算
- POWER(3,3) 3的3次方
- ROUND() 四舍五入
- TRUNCATE() 数字截断
- TRUNCATE(125.89, -1)=>120
比较运算符与函数
- [NOT] BETWEEN ... AND ...
- [NOT] IN()
- IS [NOT] NULL
日期时间函数
- NOW() 当前时间和日期
- CURDATE() 当前日期
- CURTIME() 当前时间
- DATE_ADD() 日期变化
- DATE_ADD('2014-3-12', INTERVAL 3 WEEK)
- DATEDIFF() 日期差值
- DATEDIFF('2013-3-12','2014-3-12') => 365
- DATE_FORMAT() 日期格式化
- DATE_FORMAT('2014-3-12','%m/%d/%Y') => 03/12/2014
信息函数
- CONNECTION_ID() 连接ID
- DATABASE() 当前数据库
- LAST_INSERT_ID() 最后插入记录(主键)
- USER() 当前用户
- VERSION() 版本信息
聚合函数
- AVG() 平均值
- COUNT() 计数
- MAX() 最大值
- MIN() 最小值
- SUM() 求和
加密函数
- MD5() 信息摘要算法
- PASSWORD() 密码算法
自定义函数
- 两个必要条件:
- 参数
- 返回值
- 创建函数
- CREATE FUNCTION function_name RETURNS {STRING|INTEGER|REAL|DECIMAL} RETURN routine_body