校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > SQL Server2008 Order by在union子句不可直接使用的原因詳解

SQL Server2008 Order by在union子句不可直接使用的原因詳解

熱門標簽:怎樣在地圖標注自己的信息 400電話辦理2273649Z空間 400電話怎么申請收費標準 智能語音外呼系統打電話 寧夏外呼系統方案 高德地圖標注生成 南京外呼系統租用 濟南電銷外呼防封卡怎么樣 電銷外呼系統違規

按照要求,每個取top 20,既然是隨機的取,那么就SQL Server Order by newid()就是了,然后把所有數據union起來就得了。所以我立即給出了答案:

selecttop 20 *fromxxxwheretype=1orderbynewid() 

union 

selecttop 20 *fromxxxwheretype=0orderbynewid()

但是在sql 查詢分析器種不對,語法有錯,我乍一看,好像沒有問題吧:

selecttop 20 *fromxxxwheretype=1orderbynewid() 單獨執行 都是沒有問題得;

下面的半句也是一樣的語法結構,也沒有錯誤。但是把這兩個查詢union起來就錯了。奇怪啊。既然提示是order附近有錯,那么我將order給去掉:

去掉也是可以運行也沒有錯啊。也就是說在union子句中的查詢不能用SQL Server Order by。但是這兒我必須要用order by啊,要不然我怎么取出隨機的20條記錄

最終改寫成了:

SELECT * FROM 

(select TOP 20 * from dbo.AngelExam where (c='無' or c=null) and (d='無' or d=null) ORDER BY newid() ) a1 

UNION 

SELECT * FROM 

(select TOP 20 * from dbo.AngelExam where (c='無' or c=null) and (d='無' or d=null) ORDER BY newid()) a2 

看著語句長了不少,有點怪怪得,但是沒法,不知道為什么SQL Server中不能在union子句中使用order by,所以只有外圍在包裝一層了。

到此這篇關于SQL Server2008 Order by在union子句不可直接使用的原因詳解的文章就介紹到這了,更多相關SQL Server2008 Order by在union子句不可直接使用內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 深入SQL SERVER合并相關操作Union,Except,Intersect的詳解
  • sqlserver Union和SQL Union All使用方法
  • SQLSERVER中union,cube,rollup,cumpute運算符使用說明

標簽:茂名 長白山 平頂山 唐山 惠州 潛江 貴港 仙桃

巨人網絡通訊聲明:本文標題《SQL Server2008 Order by在union子句不可直接使用的原因詳解》,本文關鍵詞  SQL,Server2008,Order,在,union,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《SQL Server2008 Order by在union子句不可直接使用的原因詳解》相關的同類信息!
  • 本頁收集關于SQL Server2008 Order by在union子句不可直接使用的原因詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 曲麻莱县| 八宿县| 闽侯县| 聂荣县| 乌拉特前旗| 亚东县| 芮城县| 马边| 台山市| 安图县| 永修县| 扬中市| 谢通门县| 盖州市| 西盟| 宿州市| 安顺市| 铜山县| 浪卡子县| 榕江县| 砀山县| 崇阳县| 隆德县| 桦南县| 通化市| 馆陶县| 秀山| 新乐市| 克拉玛依市| 新乡县| 济南市| 玛曲县| 阿图什市| 赤壁市| 健康| 安吉县| 体育| 盐山县| 新巴尔虎左旗| 筠连县| 报价|