1.基础函数
1.avg(xx)
返回 xx 列中值的平均值
avg会忽略 null 行
2.count(xx)
返回 xx 列的行数
3.max(xx)
返回 xx 列中的最大值
4.min(xx)
返回 xx 列中的最小值
5.sum(xx)
返回 xx 列中值的总和
6.distinct(xx)
对 xx 列进行 去重
7.mod(a,b)
取余;等价于 a % b;
基础用法:如果id需要是偶数或者奇数时就可以使用mod。
mod(id,2)=1 是指id是奇数;
mod(id,2)=0 是指id是偶数;
8.round(a,b)
保留小数;对 a 保留 b 位小数;
基础用法:round(a,2),对 a 保留 2 位小数。
2.if()、ifnull()、nullif()、isnull()
1、IF()
IF(a,b,c),如果a的值为true,则返回b的值,如果a的值为false,则返回c的值。
SELECT IF(TRUE,'A','B'); -- 输出结果:A
SELECT IF(FALSE,'A','B'); -- 输出结果:B
2、IFNULL()
IFNULL(a,b),如果a的值为null,则返回b的值,如果a的值不为null,则返回a的值。
SELECT IFNULL(NULL,'B'); -- 输出结果:B
SELECT IFNULL('HELLO','B'); -- 输出结果:HELLO
3、NULLIF()
NULLIF(a,b),如果a=b成立,那么返回值为null,否则返回值为a的值。
SELECT NULLIF('A','A'); -- 输出结果:null
SELECT NULLIF('A','B'); -- 输出结果:A
4、ISNULL()
ISNULL(a),如果a的值为null,则返回1,如果a的值不为null,则返回0。
SELECT ISNULL(NULL); -- 输出结果:1
SELECT ISNULL('HELLO'); -- 输出结果:0