欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

sql 处理数据字段为NULL 若不为空则显示该值,若为空转换成别的值。

程序员文章站 2022-06-27 20:31:02
第一种方法: 判断字段是否为空,如果为空转成你要的字符 1.oracle : nvl(“字段名”,’转换后的值’);//字段名是双引号,转换后的值是单引号 2.sql Server: isnull(“字段名”,’转换后的值’)//字段名是双引号,转换后的值是单引号 3.mySql: ifnull(字 ......
第一种方法:
判断字段是否为空,如果为空转成你要的字符
1.oracle :
nvl(“字段名”,’转换后的值’);//字段名是双引号,转换后的值是单引号
2.sql server:
isnull(“字段名”,’转换后的值’)//字段名是双引号,转换后的值是单引号
3.mysql:
ifnull(字段名,’转换后的值’)//字段名不加引号,转换后的值是单引号
注:mysql 也有isnull  但是只判断并不会转换
例子:
oracle
select username from b_user;
select nvl("username",'改变后的值') as username from b_user;12
sql server
select isnull("username", '改变后的值') as username from b_user1
mysql:
select ifnull(username,'改变后的值') as username from b_user;1
第二种方法:
select (case when a is not null then a when a is null then b end ) as a from table
or
select (case when a is not null then a  else b) as a from table
当在sql拼接时推荐使用第二种方法,因为第一种的双引号会影响拼接的
————————————————————————————————————————————————
原文链接:https://blog.csdn.net/helei_qingzheng/article/details/78427646