繁体   English   中英

SQL:多个 Where 条件

[英]SQL: Multiple Where Conditions

如果满足以下任一条件,我想 select 表中的以下行:

  • 条件一:var_1 不能等于 1 或 0

  • 条件 2:var_2 不能等于 2

例如,这意味着结果表可以具有 var_2 = 2,前提是 var_1 <> 1,0。 同样,var_1 可以等于 1 或 0,前提是 var_2 <>2。

我尝试编写以下 SQL (Netezza) 命令:

select * from my_table where( ("var_1" <> 1 AND "var_1" <> 0 ) OR ("var_2" <>2 ) )p;

但是,这将返回违反此条件的行,例如:

  var_1 var_2
1     1     2
2     0     2

有人可以告诉我如何纠正这个吗?

谢谢!

默认情况下,双引号内的字符是字符串文字,因此不要在双引号内指定字段。

select * from my_table where( (var_1 <> 1 AND var_1 <> 0 ) OR (var_2 <>2 ) );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM