最近,我縮小了本地數據庫的大小,並將大小從6gb減小到了1mb。在縮小數據庫後order by子句不工作
但之後,一些查詢不起作用,那些已經在開發和現場服務器(在本地,發展和活的SQL版本是相同的)工作。
一個這個查詢的是
SELECT a.col1,
b.col2,
isnull(a.intPriority, 100) AS intPriority
FROM tab1 a
INNER JOIN tab2 b
ON a.id = b.id
UNION
SELECT a.col1,
b.col2,
isnull(a.intPriority, 100) AS intPriority
FROM tab1 a
INNER JOIN tab2 b
ON a.id = b.id
ORDER BY a.intPriority
該查詢給我一個錯誤:
ORDER BY items must appear in the select list if the statement contains a UNION, INTERSECT or EXCEPT operator.
上面的查詢運行良好的開發和實時服務器,爲什麼不能在本地?
我知道,假設我通過intPriority更改順序,問題將解決,但它不是解決方案。我必須改變我的整個網站。
你爲什麼在這裏做工會?由於這兩個語句都是相同的,並且聯合會篩選出重複項,所以您要完成的任務就是使查詢速度變慢。 – HLGEM 2012-07-17 15:05:23
你也可以告訴使用什麼數據庫版本在沒有工作的機器上運行,以及那些應該做的。 (我發現很難相信任何實際工作,因爲這是一個基本的語法錯誤。) – HLGEM 2012-07-17 15:08:46
這是例子。在我的情況下,我在工會右側有另一個查詢。 – 2012-07-17 15:10:47