mysql case when then 的使用和IFNULL的使用

一、case when then 的使用

SELECT            
case                   -------------如果
when sex='1' then '男' -------------sex='1',则返回值'男'
 when sex='2' then '女' -------------sex='2',则返回值'女'  
 else '其他'                 -------------其他的返回'其他’6     end                    -------------结束
from   sys_user            --------整体理解: 在sys_user表中如果sex='1',则返回值'男'如果sex='2',则返回值'女' 否则返回'其他’

二、IFNULL(a,b)

如果a不是NULL,IFNULL()返回a,否则它返回b。IFNULL()返回一个数字或字符串值

具体用法如:现有学生表(tbl_student)和分数表(score),查询学生表的所有字段和学生相对于的英语成绩(english_score)sql如下:

select stu.*,
IFNULL(score.english_score,0) 
from tbl_student stu,tbl_score score 
where 1=1 and stu.stu_id=score.stu_id

以上sql中,如果score表中的english_score有值,则IFNULL(score.english_score,0)就显示english_score,否则,显示0

你可能感兴趣的:(mysql)