婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 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子句不可直接使用的原因詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 社会| 洪湖市| 琼中| 瑞金市| 汉沽区| 曲靖市| 宣威市| 开化县| 濉溪县| 志丹县| 南岸区| 苏尼特左旗| 太原市| 开阳县| 金平| 通榆县| 和田县| 凌海市| 崇文区| 横山县| 陆川县| 石首市| 元朗区| 上饶县| 蒲城县| 义马市| 措美县| 宁化县| 临江市| 乳山市| 老河口市| 白银市| 潞城市| 巩留县| 伊通| 博爱县| 衡阳县| 揭东县| 巴青县| 永修县| 阿坝县|