我查询中的 Where 条件未正确过滤记录

Where condition in my query not filtering the records properly

我查询中的 Where 条件没有正确过滤记录。我在图片中附上了我的查询和结果。记录必须仅显示 taskNum="88" 但另外它还显示 89。我需要获取 taskNum="88" 和 Tranlineno=1 或 Null 的记录。请帮助我查询有什么问题。

您需要使用正确的括号来正确设置查询格式。

SELECT * 
FROM picktaskdetail 
WHERE taskNum="88" AND (Tranlineno="1" OR wlotno is NULL) AND ITEM = "0101010601BR"

为您在查询中编写的条件添加适当的括号。 您的条件是:-

  1. taskNum="88"
  2. Tranlineno=1 或 Null

现在,这可以得到匹配条件1 & 条件2的结果。 现在您的条件 2 是一个 OR 条件,因此需要使用括号单独处理。

参见下面提到的查询实现:-

SELECT * 
FROM picktaskdetail 
WHERE taskNum="88" 
AND (Tranlineno="1" OR wlotno is NULL) 
AND ITEM = "0101010601BR"