程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> union附近有語法錯誤

union附近有語法錯誤

編輯:關於SqlServer
sql 查詢 提示錯誤:union附近有語法錯誤

原因:
union或者union all只可以有一個order by,要放在後邊的語句

當然,如果有需要用到多個order by 和 union一起使用,也是有辦法的,在文章後面會介紹。

所以union前邊別放排序 order by語句

錯誤:
select * from hovertree_news where hovertreeid <50 order by hovertreeid desc
union
select * from hovertree_news where hovertreeid>100 order by hovertreeid asc

錯誤:
select * from hovertree_news where hovertreeid <50 order by hovertreeid desc
union
select * from hovertree_news where hovertreeid>100


正確:

select * from hovertree_news where hovertreeid <50
union
select * from hovertree_news where hovertreeid>100 order by hovertreeid asc


以下是union和多個order by一起使用,已經在MSSQL中測試通過哦:
select * from (select top 1 * hovertree_news where hovertreeid>54 order by hovertreeid asc) t1
union
select * from (select top 1 * from hovertree_news hovertreeid <54 order by hovertreeid desc) t2
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved