【发布时间】:2018-06-14 18:31:41
【问题描述】:
以下查询几乎完成。但是,我试图在 where 子句中包含一个条件,该条件考虑了三列中的值,从而将排除与三列中所述值匹配的任何记录,任何其他可能具有一个或两个值但不是全部的记录三个包含在输出中。到目前为止,没有运气:
SELECT
PRODUCT_ID,
UPC,
CLEANSED_BRAND,
CLEANSED_TITLE,
DIVISION_ID,
DEPARTMENT_ID,
VENDOR_ID
FROM ATTRIBUTE
WHERE (DIVISION_ID <>37 AND DEPARTMENT_ID <>377 AND VENDOR_ID<>534)
由于某种原因,此 WHERE 子句将 AND 视为 OR,因为输出排除了任何具有 DIVISION_ID 37、DEPARTMENT_ID 377 或 VENDOR_ID 534 的记录。
它旨在仅排除 DIVISION_ID = 37 AND DEPARTMENT_ID = 377 AND VENDOR_ID = 534 的记录。
【问题讨论】:
-
能否提供样本数据和样本预期输出
-
标记您正在使用的 DBMS(即
MySQL、SQL Server等)。
标签: sql where-clause