SQL Server - 执行时接近 "Primary" 的语法错误



执行我的 SELECT 语句时,我在"主要"附近收到语法错误。我错过了什么?

SELECT Name
FROM Production.Product
WHERE ProductID IN (SELECT ProductID FROM Production.ProductProductPhoto WHERE Primary = 1);

首先:你应该在方形[Primary]之间写"Primary"。因为它是一个保留字。

编辑

而且,如果您将结果范围缩小到只有主照片的产品,则必须添加第二个where条件:

SELECT Name
FROM Production.Product
WHERE 
ProductID IN (SELECT ProductID FROM Production.ProductProductPhoto WHERE [Primary] = 1)
AND ProductID NOT IN (SELECT ProductID FROM Production.ProductProductPhoto WHERE [Primary] = 0);

相关内容

最新更新