MYSQL-函数

单行函数
--  字符函数

--  拼接字符串
SELECT CONCAT(email,nick_name) from user;
-- 列转行
SELECT GROUP_CONCAT(email) from user;
--   列转行
SELECT group_CONCAT(email) from `user`;
--   bcd 从第二个字符开始截取
SELECT SUBSTR('abcd',2);
--   bc 从第二个字符开始截取2位长度
SELECT SUBSTR('abcd',2,2);
--   2 返回子串第一次出现的索引
SELECT INSTR('abcdcjjbd','bc');
--   bbdd 前后去掉 a
SELECT TRIM('a' FROM 'aaabbddaa');
--   **abc 字符串长度如果小于5,左边用*天才,如果长度大于5,从做截取5位。RPAD 右边
SELECT LPAD('abc',5,'*');

===================================================================
--   数学函数

--   四舍五入
SELECT ROUND(1.2);
SELECT ROUND(1.215,2);
--   向上取整,返回大于等于的最小整数
SELECT CEIL(2.3);
--   向下取整 返回小于等于的最大整数
SELECT FLOOR(2.4);
--   1.2 截取
SELECT TRUNCATE(1.23,1);
--   1 取余 
SELECT MOD(5,2);

===================================================================
--   日期函数

--   2019-10-13 18:05:54
SELECT NOW();
--   2019-10-13
SELECT CURDATE();
--   18:07:13
SELECT CURTIME();
--   年 月 日 时 分 秒
SELECT YEAR(NOW()),MONTH(NOW()),DAY(NOW()),HOUR(NOW()),MINUTE(NOW()),SECOND(NOW());
--   将字符串日期转换成指定格式的日期 
SELECT STR_TO_DATE('2019-10-13','%Y-%m-%d');
--   19年-10月-13日 将日期转换成字符
SELECT DATE_FORMAT(NOW(),'%y年-%m月-%d日');

======================================================================
 --    流程控制函数
-- 大
SELECT IF(10 > 4,'大','小');

--   CASE WHEN THEN
SELECT
	 email,CASE email
WHEN 'aa' THEN
	'AA'
WHEN 'bb' THEN
	'BB'
ELSE
	'OTHER'
END '邮箱'
FROM
	USER;


SELECT
	email,
	CASE
WHEN email = 'aa' THEN
	'AA'
WHEN email = 'bb' THEN
	'BB'
ELSE
	'OTHER'
END '邮箱'
FROM
	USER;
分组函数【聚合函数,统计函数,组函数】
-- 求和
SELECT SUM(salary) FROM employee;
-- 计数 统计非空值
SELECT COUNT(salary) FROM employee;
-- 平均值
SELECT AVG(salary) FROM employee;
-- 最大值
SELECT MAX(salary) FROM employee;
-- 最小值
SELECT MIN(salary) FROM employee;
其他函数
-- 两个时间段相差的天数
SELECT	DATEDIFF(NOW(),'1970-01-01');
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值