嗨,我使用的Microsoft SQL Server 2014(SP1-CU4)查詢exection失敗,錯誤ORDER BY項目必須出現在選擇列表中,如果SELECT DISTINCT指定
SELECT DISTINCT A.PI_LOOKUP_CATEGORY_ID,
REPLACE(REPLACE(UPPER(A.LOOKUP_CATEGORY_NAME), ' ', '_'), '-', '_') AS CATEGORY_TECH_NAME,
A.LOOKUP_CATEGORY_NAME,
A.LOOKUP_CATEGORY_DESCR,
COUNT(B.PI_LOOKUP_CATEGORY_ID) AS USAGE_COUNT
FROM [PI_LOOKUP_CATEGORY] A LEFT OUTER JOIN [PI_INSIGHT_COLUMN] B ON
A.PI_LOOKUP_CATEGORY_ID = B.PI_LOOKUP_CATEGORY_ID
GROUP BY A.PI_LOOKUP_CATEGORY_ID,
REPLACE(REPLACE(UPPER(A.LOOKUP_CATEGORY_NAME), ' ', '_'), '-', '_'),
A.LOOKUP_CATEGORY_NAME,
A.LOOKUP_CATEGORY_DESCR
ORDER BY REPLACE(REPLACE(UPPER(A.LOOKUP_CATEGORY_NAME), ' ', '_'), '-', '_')
上面的查詢失敗,出現錯誤「查詢執行失敗,出現錯誤如果指定了SELECT DISTINCT,則ORDER BY項目必須出現在選擇列表中。「
相同的查詢等(2008 R2,2012等)
做工精細與SQL服務器的較低版本,請讓我們知道這個問題在SQL服務器的解決方案2014年
你爲什麼試圖在分組之後應用'DISTINCT'?您已經通過唯一值對數據進行了分組,沒有更多的重複。刪除「DISTINCT」。並嘗試將計算(所有這些替換)移入CTE中。 –
我的問題是,查詢與SQL Server如2008年或2012年一樣正常工作,它不適用於SQL Server 2014(SP1),這是SQL Server 2014的問題有沒有來自Microsoft社區的此問題的KB或更新 – Raviraj
這是關於什麼被棄用,過時或開始與新版本不同的工作。您應該閱讀關於最新版本的_什麼是new_或_howto migrate_文章。 –