如何编写 where 子句以仅在两件事为真时排除行?例如,我想要
的倒数SELECT * FROM table
where
start_num = end_num
and time_taken < 100
所以我只想返回 start_num 不等于 end_num 的值,但前提是 time_taken 大于 100。这两件事都必须为 false 才能删除行。
我试过了
SELECT * FROM table
where (start_num <> end_num and tripduration > 100)
但这似乎没有给我正确的行数作为回报
答案 0 :(得分:1)
如果我理解正确,您可以简单地使用:
where not (start_num = end_num and time_taken < 100)
请注意,这并不完全相同,因为这也会过滤掉任何列具有 NULL
值的值。如有必要,可以轻松调整以处理该问题。
这个逻辑也可以写成:
where start_num <> end_num or time_taken >= 100