今天再写sql的时候有一个需求,是将数据库某个字段的空字符串或者null替换一个默认值。我首先想到的是replace和isnull。select isnull(字段名,'替换的内容') from 表名
select replace(字段名, '', '替换的内容') from 表名.
第一个替换Null是没有问题的,但是你们会发现第二个是有问题的,它不能替换空字符串。此时我们采用case when的写法,既方便,处理起来也简单
select case when 字段名='' then '替换的内容' else 字段名 end from 表名
上面这句话就是将字段名为空的替换成XXX,如果不为空则保留