gpt4 book ai didi

sql - 什么时候 `x IS NOT NULL` 和 `NOT(x IS NULL)` 不一样

转载 作者:行者123 更新时间:2023-12-04 01:35:45 25 4
gpt4 key购买 nike

为了什么x

The expression x IS NOT NULL is not equal to NOT(x IS NULL), as is the case in 2VL



(引自 this answer ,其中引用了 Fabian Pascal Practical Issues in Database Management - A Reference for the Thinking Practitioner - 接近该答案的结尾)

我的猜测是什么时候 x IS NULL是 NULL,但我无法猜测那会是什么时候(即我没有检查 SQL 标准)。这个猜测是错误的。

最佳答案

从我读到的内容来看,与 Null 相比,Fabian Pascal 不是指标量值,而是很少实现的 ROW 类型。在标准中,想法是您可以使用 IS NULL 比较(行)表。以确定是否所有值都设置为 NULL 值。因此,X IS NULL将意味着所有值都设置为 NULL 值,X IS NOT NULL将意味着没有值被设置为 NULL 值和 NOT (X IS NULL)将意味着并非所有值都设置为 NULL 值,或者换句话说,至少存在一个未设置为 NULL 的值。诚然,我在这里轻描淡写地踩在巨人的肩膀上,但这就是我如何解释他的陈述。

关于sql - 什么时候 `x IS NOT NULL` 和 `NOT(x IS NULL)` 不一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2859169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com