如何编写我的sql查询正确?我想在查询中使用WHERE子句,但我不知道如何正确。这是我的错误查询:
**SELECT pil.[Buy-from Vendor No_], pil.No_, pil.Amount, pil.Quantity
FROM dbo.[„blk“ 2011$Purch_ Inv_ Line]AS pil
WHERE pil.Type=5
LEFT JOIN dbo.[„blk“ 2011$Purch_ Inv_ Header] AS pih
ON pil.[Document No_]=pih.No_
ORDER BY pil.amount**
答案 0 :(得分:1)
将WHERE
子句移到ORDER BY
之前。
以下文档定义了SELECT
语句的外观:http://msdn.microsoft.com/en-us/library/ms189499.aspx。
答案 1 :(得分:1)
这是你处理左连接的方式
SELECT
pil.[Buy-from Vendor No_]
, pil.No_, pil.Amount
, pil.Quantity
FROM dbo.[UAB „Arvi cukrus“ 2011$Purch_ Inv_ Line] pil
LEFT JOIN dbo.[„blk“ 2011$Purch_ Inv_ Header] Pih ON pil.[Document No_]=pih.No_
WHERE pil.Type=5
ORDER BY pil.amount
答案 2 :(得分:1)
Where
位于From
子句之后。正确的查询是
SELECT pil.[Buy-from Vendor No_], pil.No_, pil.Amount, pil.Quantity
FROM dbo.[„blk“ 2011$Purch_ Inv_ Line]AS pil
LEFT JOIN dbo.[„blk“ 2011$Purch_ Inv_ Header] AS pih
ON pil.[Document No_]=pih.No_
WHERE pil.Type=5
ORDER BY pil.amount;
答案 3 :(得分:0)
将所有连接后放在哪里:
SELECT pil.[Buy-from Vendor No_], pil.No_, pil.Amount, pil.Quantity
FROM dbo.[„blk“ 2011$Purch_ Inv_ Line]AS pil
LEFT JOIN dbo.[„blk“ 2011$Purch_ Inv_ Header] AS pih
ON pil.[Document No_]=pih.No_
WHERE pil.Type=5
ORDER BY pil.amoun
答案 4 :(得分:0)
将WHERE
放在ORDER BY
答案 5 :(得分:0)
将WHERE
子句移到FROM
子句和其他表引用之后,如下所示:
SELECT
pil.[Buy-from Vendor No_],
pil.No_,
pil.Amount,
pil.Quantity
FROM ...
...
WHERE pil.Type=5
ORDER BY pil.amount