新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
SQL語句中布爾表達式不可忽視的部分
寫SQL語句時,布爾表達式中的第三個值UNKNOWN往往被我們所忽視,但是這其實是很關鍵的,下文將帶您做一個測試,說明這個問題。

創(chuàng)新互聯(lián)建站堅持“要么做到,要么別承諾”的工作理念,服務領域包括:網(wǎng)站設計、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的翠屏網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!
我們寫SQL語句有時,總是希望SQL表達式能夠返回TRUE或者FALSE,卻常常忽略了第三個值UNKNOWN。由于不注意判斷返回的值有時會導致錯誤的結果, UNKNOWN與TRUE和FALSE做AND、OR運算返回的結果有一些差異。
來看一個小小的測試:
1
.AND操作
| AND | TRUE | FALSE | UNK |
| TRUE | |||
| FALSE | |||
| UNK |
2
.OR操作
| OR | TRUE | FALSE | UNK |
| TRUE | |||
| FALSE | |||
| UNK |
如果你已經(jīng)有了答案,不妨跟微軟工程師們給出的答案對照一下吧:
| AND | TRUE | FALSE | UNK |
| TRUE | TRUE | FALSE | UNK |
| FALSE | FALSE | FALSE | FALSE |
| UNK | UNK | FALSE | UNK |
| OR | TRUE | FALSE | UNK |
| TRUE | TRUE | TRUE | TRUE |
| FALSE | TRUE | FALSE | UNK |
| UNK | TRUE | UNK | UNK |
【編輯推薦】
自動生成INSERT語句的SQL存儲過程
SQL語句中的SELECT DISTINCT
教您用事務一次處理多條SQL語句
通過執(zhí)行多條SQL語句實現(xiàn)數(shù)據(jù)庫事務
存儲過程優(yōu)化的SQL語句寫法
網(wǎng)頁標題:SQL語句中布爾表達式不可忽視的部分
文章出自:http://m.5511xx.com/article/cdhdcej.html


咨詢
建站咨詢
