postgresql中null对!=的影响


今天开发问我,为什么!=操作不能获取值为null记录:

abce=# select id,
abce-#         a_no,
abce-#         a_code,
abce-#         a_number,
abce-#         date_receive,
abce-#         bank_a,
abce-#         status
abce-# from
abce-#         erp_a_examine 
abce-# where
abce-#         ( a_number = '1023' and a_code = '231174' and status != '已作废' );
 id  | a_no | a_code | a_number | date_receive | bank_a | status 
-----+------+--------+----------+--------------+--------+--------
(0 rows)

abce=# select id,
abce-#         a_no,
abce-#         a_code,
abce-#         a_number,
abce-#         date_receive,
abce-#         bank_a,
abce-#         status
abce-# from
abce-#         erp_a_examine 
abce-# where
abce-#         ( a_number = '1023' and a_code = '231174' );
 id  | a_no | a_code | a_number | date_receive | bank_a | status 
-----+------+--------+----------+--------------+--------+--------
 333 | 1023 | 231174 | 12155    | 2010-03-02   |        | 
(1 row)

abce=# 

  

只是因为null是非safe的操作。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM