第一种方法:

判断字段是否为空,如果为空转成你要的字符
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