[英]sql using two or more OR conditions in a select statement
AM trying to get status where status is not=16 or not=11 so basically i would like to get records with statuses AM试图获取状态为not = 16或not = 11的状态,所以基本上我想获取具有状态的记录
1 to 10 jump 11, then 12 to 15
This is my sql statement 这是我的SQL语句
SELECT t.*
FROM tbl_trucks t
WHERE t.truck_status != 11
OR t.truck_status != 16;
In the above case only the second one is executed(!16). 在上述情况下,仅执行第二个(!16)。
I have also tried 我也尝试过
SELECT t.*
FROM tbl_trucks t
WHERE t.truck_status <> 11
OR t.truck_status <> 16
what could be wrong? 有什么问题吗?
Use NOT IN
: 使用NOT IN
:
SELECT t.*
FROM tbl_trucks t
WHERE t.truck_status NOT IN (11, 16);
Your code would work with AND
instead of OR
. 您的代码将使用AND
而不是OR
。
You are using the wrong logic. 您使用了错误的逻辑。 If you want to NOT show status 11
and 16
it means that you want everything that isn't 11 AND isn't 16 so: 如果您不希望显示状态11
和16
则表示您想要的不是11也不是16的所有内容都是这样:
SELECT t.*
FROM tbl_trucks t
WHERE t.truck_status <> 11
AND t.truck_status <> 16
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.