新聞中心
寫SQL語(yǔ)句時(shí),布爾表達(dá)式中的第三個(gè)值UNKNOWN往往被我們所忽視,但是這其實(shí)是很關(guān)鍵的,下文將帶您做一個(gè)測(cè)試,說(shuō)明這個(gè)問(wèn)題。

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


咨詢
建站咨詢
