我有一個相當複雜的查詢工作在訪問和MySQL罰款,但沒有在MS SQL工作。收到一條消息,「這個關鍵字‘ORDER’附近有語法錯誤」。查詢的目的是讓高層100份訂單,以加快航運(「USPS快報」)第一。爲什麼這個子查詢失敗?
SELECT *
FROM ( SELECT
TOP 100 o.orderid
, (
select 1
from orders
where orderid = o.orderid
and oshipmethod = 'USPS Express'
) as ship_priority
FROM orders o
WHERE o.order_status = 10
)
ORDER BY ship_priority DESC
該查詢失敗的任何明顯原因?
內頂不具有對應的ORDER BY子句。究竟哪個TOP 100排你期望? –
我不確定爲什麼人們認爲他們使用的SQL Server版本應該是這樣一個保守的祕密。它通常是解決方案的關鍵部分。 –
很好的捕獲阿龍,我把前100名移到了它所屬的外圍選擇 – rhall