如何理解in not in和包含null的集合之間的關係?

時間 2021-05-10 20:46:31

1樓:塔外班

Null本身就是作為乙個奇葩的存在,它的意義是UnKonwn。

順口溜來了:

未知就是未知

未知不等於未知

未知不大於也不小與未知

2樓:褪色白襯衫

為啥要這麼寫。。好奇怪,對於null值比較請用isnull,任何值和null比較都是unknow,in等價於1<>2 and 1<>null,然後真值是 true and unknow,所以為false

3樓:黃贇

如果你用的是 T-SQL , 補充一點: 在特別的 option 下面,表現不一樣:

這個選項是 ANSI_NULLS.

如果這個選項關閉,則所有與null比較的結果,都是 true;

如果這個選項開啟,則所有與null比較的結果,都是 Unknown.

SET ANSI_NULLS OFF

DECLARE @stringone VARCHAR(20)

SELECT @stringone

,CASE

WHEN @stringone = NULL

THEN 'null compares to string variable without value equals true'

ELSE 'null compares to string variable without value equals unknown'

END AS result

GOSET ANSI_NULLS ON

DECLARE @stringone VARCHAR(20)

SELECT @stringone

,CASE

WHEN @stringone = NULL

THEN 'null compares to string variable without value equals true'

ELSE 'null compares to string variable without value equals unknown'

END AS result

GOSET ANSI_NULLS OFF

DECLARE @integer INT

SELECT @integer

,CASE

WHEN @integer = NULL

THEN 'null compares to integer variable without value equals true'

ELSE 'null compares to string variable without value equals unknown'

END AS result

GOSET ANSI_NULLS ON

DECLARE @integer INT

SELECT @integer

,CASE

WHEN @integer = NULL

THEN 'null compares to integer variable without value equals true'

ELSE 'null compares to integer variable without value equals unknown'

END AS result

GO下面的語句,用來檢查當前使用者session的一系列選項是否開啟:

DBCC USEROPTIONS

4樓:

1NOTIN(2

,NULL

)等價於

1<>2AND

1<>NULL

和 NULL 值的任何比較均為 UNKNOWN,於是為TRUE

ANDUNKNOWN

根據三值邏輯的真值表,結果為 UNKNOWN,於是整個查詢返回空集……

PS:同理,第二句的 WHERE 子句不是 FALSE,是 UNKNOWN

如何理解全面營養?都包含哪些營養?

營養師龔曉芳 七大營養素 碳水化合物 脂肪 蛋白質 維生素 礦物質 水 膳食纖維 全面營養 每一餐七大營養素都要攝入,而且要均衡發配,避免出現木桶效益。通俗的說,吃公尺飯要搭配蔬果和肉類。 健康百齡 全面營養飲食的內容很多,按現代營養學大致包括脂肪 蛋白質 碳水化合物 維生素 無機鹽和膳食纖維和水,...

如何推導數列n 的前n項和?

買女孩的小男孩 待定係數法,設ax bx cx d,n的和的通項一定是個3次式。1次式 n 的和是2次式,2次式 n 的和是3次式,3次式 n 的和是4次式。這個思想在高中數列中很實用 可以理解為牛頓 萊布尼茲公式。 博學多聞 看到諸位大佬都用巧妙的代數變形完成證明,我在這裡就寫一種通俗易懂的通過幾...

如何理解青少年人工智慧教育,它應該包含什麼內容,怎樣教學?

Tony 回答這個問題,首先看教育的目的和場景 如果目的是興趣培養,鍛鍊學生的動手能力,那麼應該是針對少數人的,方式可能是對人工智慧一些常見技術的講解與運用,比如對利用機器視覺來做一些影象處理的任務或者活動,利用語音識別或者自然語言理解等技術來做一些文字理解,翻譯,或者機器寫作等。現在市面上大部分應...