Postgresql 支持两个特有的比较语句 IS disTINCT FROM 和 IS NOT disTINCT FROM,他们认为NULL是已知的值,而不是未知值。他们的比较和 != 不同。
看例子:
postgres=#selecta,b,aisdistinctfrombas"distinctfrom",a!=bas"!=" postgres-#from postgres-#(values(1),(2),(NULL))asa(a),postgres-#(values(1),(NULL))asb(b); a|b|distinctfrom|!= ---+---+---------------+---- 1|1|f|f 1|2|t|t 1||t| 2|1|t|t 2|2|f|f 2||t| |1|t| |2|t| ||f| (9rows)
通过例子得知:
1 is distinct from 1 返回false,1 != 1返回false。
1 is distinct from 2 返回true,1 != 1返回true。
1 is distinct from null 返回true,1 != null返回null。
null is distinct from null 返回false,null != null 返回null。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。