购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.1 NULL相关

当查询条件中相关字段存在NULL值时,如果直接使用WHERE字段= @参数值,则怎么都匹配不了为NULL值的记录,因为NULL=任何值,包括NULL=NULL本身都不会返回true,只会仍然是NULL。

此时,可以将NULL进行转换,当字段值为NULL时,转换为一个默认值。

使用coalesce()可以表达此功能,它的功能是返回参数列表(支持不限定数量的参数)中,第一个非空值。

那如果我们需要根据status(包含NULL值,NULL时默认false)来查询,参数值可能是true/false,则可以表达为coalesce(status, false),当status为NULL时,自然返回的就是后边的false。

此时,coalesce(status, false)相当于(case when status is null then false else status end)。 w3liFS91v6MexaKi+Lp8LnUg+0CVSqk3MuocYrxzC+5mxi3BcGRy8VkfhNy6Pyzd

点击中间区域
呼出菜单
上一章
目录
下一章
×

打开