Group_concat():
聚合函数group_concat(X, Y),其中X是要连接的字段,Y是连接时用到的字符,可省略,默认为逗号。
此函数必须与Group by配合使用
select
dept_no,
group_concat(emp_no) as employees
from dept_emp
group by dept_no
right():
函数right(s,b)返回字符串前n个字符
left():
函数left(s,n)返回字符串后n个字符
substr():
函数substr(x,y,z)或substr(x,y),其中x是要截取的字符串;y是字符串的起始位置范围+/-(1-length(x));z表示要截取字符串长度,若z省略,则y一直截取到字符串末尾。
replace()
函数replace(x,y,z),其中x表示字符串,y表示被替换的值,z表示替换值
length()
函数length(x),取x的长度。
RTrim()
去除字符串右端空格
LTrim()
去除字符串左端空格
trim()
去除字符串两端空格
concat()
函数concat(x,y,z),x表示字符串,y表示连接符,z表示字符串。将x和z通过y拼接。
group_concat()
函数group_concat([distinct] 拼接字段
[order by asc/desc 排序字段
] [separator 分隔符
] )
round()
函数round(x,y),x表示浮点数,y表示保留几位小数。
datediff()
函数datediff(x,y),x,y为日期,得到的结果为x与y相差的天数。如果日期x比y日期大,结果为正;如果x比y的日期小,结果为负。
nvl()
函数nvl(x,y).如果x为空值,则返回返回y的值,否则返回x值。
函数的目的是把一个空值转换为一个实际的值。x,y可以是数字型、字符型或日期型,x,y必须为同一类型。
date_format()
函数date_format()根据格式整理日期。
例如:
select date_format('2020-06-14','yyyy-MM');
2020-06
date_add()
函数date_add()加减日期
例如:
select date_add('2020-06-14',-1);
2020-06-13
select date_add('2020-06-14',1);
2020-06-15
next_day()
获取当天的下一个周一
select next_day('2020-06-14','MO');
2020-06-15
last_day()
求当月的最后一天
select last_day('2020-06-14');
2020-06-30
lag()
函数lag(x,y,z),可以取出当前行的同一字段(x参数)的前面第y行,如果没有用z代替。
lead()
函数lead(x,y,x),可以在一次查询中取出当前行的同一字段(x参数)的后面的第y行数据,如果没有用z代替。
bin()
函数bin(x),将x转换为2进制。
conv()
函数conv(x,y,z),将值x从y进制转换为z进制。
lag()
函数lag(expression,offset,default_value),向前偏移,expression:列名;offset:偏移量;default_value:超出记录窗口的默认值(默认为null)。
lead()
函数lead(expression,offset,default_value),向后偏移,参数同上。