-
根據時間條件,選擇前 10 個和後 10 個。
1.有乙個時間字段,根據時間條件排序,取前十和後十。
1)前十名:
select * from (select * from tab_name a order by
date_col )
where rownum<11;
2)最後十個:
select * from (select * from tab_name a order by date_col desc)
where rownum<11;
2.沒有時間場,前十、後十直接按實物入倉順序取。
1)前十名:
select * from (select * from tab_name a order by rownum)
where rownum<11;
2)最後十個:
select * from (select * from tab_name a order by rownuml desc)
where rownum<11;
-
兩者的區別在於語法不同。
頂部或行號可用於選擇 SQLSERVER 中的前 10 個條目,但在 Oracle 中只能使用行號。
如資料所示:
現在需要按 ID 的相反順序取出前 10 位數字:
神諭:
select , from
select test.*,row_number() over (order by id desc) rn from test) t
where rn<=10;
結果:sqlserver 中的 Execute 方法:
select top 10 * from test order by id desc;
結果: 注意:SQL Server 2005 及更高版本也可以使用 Oracle 中的語句執行,得到的結果完全相同。
-
如上所述,oracle和sqlserver查詢前n條資料時,oracle沒有top關鍵字,使用keyword rownum獲取前n條資料的資料。
-
沒有區別,只是兩個查詢的語法略有不同。
-
樓上關於預言機的宣告有點問題,應該對子查詢更好。
select * from table_name where to_char(col_date,'yyyy-mm-dd hh24:mi:ss') = '2011-07-08 17: >>>More
如果 an = 根數 n - 根數 (n-1)。
當 n 時,a1 = 1 和 a2 = 根數 2-1 顯然為真。 >>>More
你好! 我是一名大學英語老師,你的問題可以這樣解決。 我希望這個解釋簡單實用。 >>>More
我想毫無疑問,有中國籃球的代表姚明,其次是王治志和易建聯,他們都是內線的棟樑,還有當年的巴特爾實力和奧尼爾的實力,還有朱方宇。