Questions tagged «condition»

5
逻辑运算符OR AND,条件和条件在WHERE中
让我们检查以下两个语句: IF (CONDITION 1) OR (CONDITION 2) ... IF (CONDITION 3) AND (CONDITION 4) ... 如果CONDITION 1是TRUE,将CONDITION 2被检查吗? 如果CONDITION 3是FALSE,将CONDITION 4被检查吗? 关于以下条件WHERE:SQL Server引擎会优化WHERE子句中的所有条件吗?程序员是否应该以正确的顺序放置条件,以确保SQL Server优化程序以正确的方式解决该问题? 添加: 感谢Jack的链接,这让T-SQL代码感到惊讶: IF 1/0 = 1 OR 1 = 1 SELECT 'True' AS result ELSE SELECT 'False' AS result IF 1/0 = 1 AND 1 = …

2
不(a = 1 AND b = 1)vs(a <> 1 AND b <> 1)
在WHERESQL查询的子句中,我希望这两个条件具有相同的行为: NOT (a=1 AND b=1) 与 a&lt;&gt;1 AND b&lt;&gt;1 第一个条件的行为符合预期,而我建议第二个条件做相同的事情,但事实并非如此。 这是非常基本的内容,但令人遗憾的是,我看不到自己在做错什么。
16 condition 


5
反转可返回UNKNOWN的布尔表达式
例 我有桌子 ID myField ------------ 1 someValue 2 NULL 3 someOtherValue 以及一个T-SQL布尔表达式,其值可以为TRUE,FALSE或(由于SQL的三元逻辑)UNKNOWN: SELECT * FROM myTable WHERE myField = 'someValue' -- yields record 1 如果我想获取所有其他记录,则不能简单地取反表达式 SELECT * FROM myTable WHERE NOT (myField = 'someValue') -- yields only record 3 我知道为什么会这样(三元逻辑),并且我知道如何解决这个特定问题。 我知道我可以使用,myField = 'someValue' AND NOT myField IS NULL并且得到一个“可逆”表达式,它永远不会产生未知: SELECT * …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.