MySQL多表联查给null赋值的实现
一、case语句
当当前字段为空,查询结果返回“none”,并且统计出现频率
select case when 字段 is null then 'none' else 字段 end as 字段, count(1) as counts from 表 group by 字段;
当当前字段为空字符串,查询结果返回“none”,并且统计出现频率
select case when 字段= '' then 'none' else 字段 end as 字段, count(1) as counts from 表 group by 字段;
当当前字段为空,查询结果返回“none”
select case when 字段 is null then 'none' else 字段 end as 字段 from 表;
当当前字段为空字符,查询结果返回“none”
select case when 字段= '' then 'none' else 字段 end as 字段 from 表;
二、isnull,ifnull,nullif的用法
1、IFNULL(expr1,expr2)的用法:
假如expr1 不为 NULL,则 IFNULL() 的返回值为 expr1;
否则其返回值为 expr2。IFNULL()的返回值是数字或是字符串,具体情况取决于其所使用的语境。
IFNULL( c.LEVEL, '小白键盘手' ) AS LEVEL
2、NULLIF(expr1,expr2) 的用法:
如果expr1 = expr2 成立,那么返回值为NULL,否则返回值为 expr1。
3、isnull(expr) 的用法:
如expr 为null,那么isnull() 的返回值为 1,否则返回值为 0。
到此这篇关于MySQL多表联查给null赋值的实现的文章就介绍到这了,更多相关MySQL null赋值内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SQL Server误区30日谈 第6天 有关NULL位图的三个误区
NULL位图是为了确定行中的哪一列是NULL值,哪一列不是。这样做的目的是当Select语句后包含存在NULL值的列时,避免了存储引擎去读所有的行来查看是否是NULL,从而提升了性能2013-01-01
SQL Server误区30日谈 第14天 清除日志后会将相关的LSN填零初始化
当日志文件在手动增长,自动增长和创建时都会进行填零初始化操作。但是请不要把这个过程和定期清除日志的过程搞混2013-01-01
sqlserver中比较一个字符串中是否含含另一个字符串中的一个字符
sql中比较一个字符串中是否含有另一个字符串中的一个字符的实现代码,需要的朋友可以参考下。2010-09-09


最新评论