1.ifnull用法
eg:
ifnull(b.member_count, 0) member_count
2.IF用法
格式:IF(value,exp1,exp2),
描述:如果value == TRUE , 执行exp1 ;value == FALSE ,则执行exp2。
eg:
IF (
length(trim(b.group_name)) > 0,
b.group_name,
group_concat(
IF (
length(trim(e.user_name)) > 2,
RIGHT (e.user_name, 2),
e.user_name
) SEPARATOR '+'
)
) session_user_name
3.contact函数
作用:将多个字符串连接。
格式:contact(str1,str2,…)
注意:若其中一个字符串为null,则返回值是null
eg:
//info字段不存在分隔符
select concat (id, name, score) as info from Student
//info字段“,”分隔符
select concat (id, ‘,’,name, ‘,’,score) as info from Student
4.contact_ws()函数
作用:将多个字符串连接,并且制定分隔符
格式:contact_ws(separator,str1,str2)
eg:
//info字段“,”分隔符
select concat_ws (‘,’,id, name, score) as info from Student
5.group by函数
作用:按照字段进行分组
格式:group by 字段
eg:
在学生表中查找相同name中最小id:
select name,min(id) from student group by name;
注意,如果是查找学生表中相同名字所有id:
select name,id from student order by name;
6.group_contact()函数
作用:将group by 产生的同一个分组中的值连接起来,返回一个字符串结果。
格式:group_contact([distinct] 要连接的字段 [order by 排序字段 asc/desc] [separator ‘分隔符’])
注意: distinct 去重,order by 排序 ,separator 分隔符 ,分隔符默认是“,”
eg:
使用group_contact()和group by 显示相同名字的人的id:
select name ,group_contact(id) from student group by name;
结果:
name group_contact(id)
小丽 3
小明 1,5,6
小王 2,4
将上面的id号从大到小排序,分隔符“_”:
select name,group_contact(id order by id desc separator ‘_’) from student group by name;
结果:
name group_contact(id order by id desc separator ‘_’)
小丽 3
小明 6_5_1
小王 4_2
查询以name分组的所有组的id和score:
select name ,group_contact(contact_ws(“,”,id,score) order by id ) from student group by name;
结果:
name group_contact(contact_ws(“,”,id,score) order by id )
小丽 3-0
小明 1-0,5-0,6-0
小王 2-0,4-0
7.length()函数
作用:统计字符串长度,单位:字节。
格式:length(str)
eg:
select length("text");
结果:
4
8.trim()函数
功能:裁剪字符串空白处。
格式:TRIM(字串)
注意:LTRIM(字串): 将所有字串起头的空白移除。
RTRIM(字串): 将所有字串结尾的空白移除。
eg:
SELECT TRIM(' Sample ');
SELECT LTRIM(' Sample ');
SELECT RTRIM(' Sample ');
结果:
'Sample'
'Sample '
' Sample'
9.left(),right()函数
功能:LEFT、RIGHT函数返回的是传入参数最左边、右边的长度为LENGTH个的字符串。
格式:LEFT(参数,LENGTH)、RIGHT(参数,LENGTH)
eg:
select left('abcdefg',3) from a;
结果:
left('abcdefg',3)
abc
10.alert table 增加列,修改列
alter table tax_link ADD COLUMN page_id
int(32) DEFAULT NULL COMMENT ‘页面id’