2016-03-07 72 views
0
SELECT TOP 28 * 
    FROM (
     SELECT DISTINCT [DATECOL] 
      ,[CODE ARTICLE] 
      ,[CODE SITE] 
      ,[CODE STRUCTURE] 
     FROM [VENTE] T2 
     WHERE PROMO = 0 
      AND ([CODE ARTICLE] IS NOT NULL) 
      AND ([CODE STRUCTURE] IS NOT NULL) 
      AND ([PRIX DE REVIENT] IS NOT NULL) 
      AND [CODE ARTICLE] = ' 714180291' 
      AND [CODE SITE] = ' 7' 
     ORDER BY [DATECOL] 
     ) T 

我有以下錯誤SQL Server中ORDER BY子句在視圖,內聯函數,派生表,子查詢無效,公共表表達式

消息1033,級別15,狀態1,行9 ORDER BY子句是 視圖,內聯函數,派生表,子查詢和公用表 表達式無效,除非TOP或FOR XML還指定。

如何糾正它嗎?

+0

刪除內部查詢中的'order by'。 –

+1

將ORDER BY移至主查詢。 (爲什麼派生表???) – jarlh

+0

@vkp我期待通過在外部查詢 –

回答

1

只需使用下面的代碼

SELECT DISTINCT TOP 28 [DATECOL] 
     ,[CODE ARTICLE] 
     ,[CODE SITE] 
     ,[CODE STRUCTURE] 
    FROM [VENTE] T2 
    WHERE PROMO = 0 
     AND ([CODE ARTICLE] IS NOT NULL) 
     AND ([CODE STRUCTURE] IS NOT NULL) 
     AND ([PRIX DE REVIENT] IS NOT NULL) 
     AND [CODE ARTICLE] = ' 714180291' 
     AND [CODE SITE] = ' 7' 
    ORDER BY [DATECOL] 
+0

告訴我,之所以投入@devotee –

+0

看起來好像沒什麼問題。爲什麼downvoting沒有解釋? (我會upvote,只是爲了彌補。) – jarlh

+0

謝謝。我已經使用在日常工作中,這些類型的查詢@jarlh –

0

ORDER BY子句應在外部查詢的地方。使用以下查詢

select top 28 * 
from 
(select distinct [datecol],[Code Article],[Code Site] ,[Code Structure] 

      from [Vente] t2 
      where promo = 0 
      and ([Code Article] is not null) and ([Code Structure] is not null) and ([Prix de Revient] is not null)and  [Code Article]= ' 714180291' and [Code Site]=' 7' 

) t 
order by [datecol] 
相關問題