常用的有数学函数、字符串函数、日期时间函数、条件判断函数、系统信息函数。
- 数学函数
-- 系统信息函数
select database();
select version();
select user();
-- 数学函数
select abs(-10) as '绝对值'
select abs(price) from products
select floor(5.9) as '向下取整';
select ceil(5.01) as '向上取整'
select round(5.419,2) as '四舍五入' -- 第二个数值是保留几位小数的意思
select rand(); -- 返回0-1之间的随机数
select pi(); -- 返回圆周率
select mod(5,2); -- 求余数,对2取余数
- 字符串函数
1.CONCAT(s1,s2...)
SELECT CONCAT('la','gou') AS 字符串链接;
concat(table.a,table.b) from table
2.LEFT(s,n)
SELECT LEFT('lagou',2) AS le_sub #从左侧提取2位;
#la
select right('lagou',2) as ri_sub
#ou
select mid('lagou',2,3) as mid_sub
#ago
4.REPLACE(s,s1,s2)
SELECT REPLACE('lagou_jiaoyu','_','.') AS 字符串替换;
#lagou.jiaoyu
5.SUBSTRING(s,n,len) -- 字符串截取
SELECT SUBSTRING('lagou_jiaoyu',7,6) AS SUBSTRING提取子串
,MID('lagou_jiaoyu',7,6) AS MID提取子串;
- 日期和时间函数
select curate()
select month(curate())
select year(curate())
- 条件判断函数
SELECT IF(10>5,10,5) as 最大值; select if(10>2,10,2); select pname,if(price>2000,'奢侈品','普通商品') '商品性质' from products; select pname,if(price>2000,price-1000,price) '优惠后的价格' from