1樓:大野瘦子
select c.d from (
select c,d,rownum rn from (
select t.* from table1 order by b desc --降序
) t1
) where rn <= 20
注:用rownum的話,你要先排好序,然後再用rownum生成偽列,再限制行數。
關於sql語句查詢排序
一、sql查詢單詞
order by 是用在where條件之後,用來對查詢結果進行排序
order by 欄位名 asc/desc
asc 表示升序(預設為asc,可以省略)
desc表示降序
order by 無法用於子查詢,否則會報錯:除非另外還指定了 top 或 for xml,否則,order by 子句在檢視、行內函數、派生表、子查詢和公用表表示式中無效。
二、關聯查詢(左外查詢)(jt專案選單查詢)
select c.*,p.name parentnam
from sys_menus c left join sys_menus p
on c.parentid=p.id
三、用order by 子句
select 《列名列表》 from 《表名》[where 條件]order by 《欄位名1> [asc|desc] [ ,欄位名2 [asc|desc] ] [,...n]--order by 《欄位名1> (不寫asc|desc, 則預設升序asc)
2樓:babyan澀
直接用order by 和top結合的語句就可以實現。
建立表及插入資料:
如上,插入25條資料,現在要求按id排序,並取出id從小到大的前20條資料,可用如下語句:
select top 20 * from test order by id;
結果截圖:
3樓:匿名使用者
用rownum的話,你要先排好序,然後再用rownum生成偽列,再限制行數。
select c.d from (
select c,d,rownum rn from (select t.* from table1 order by b desc --降序
) t1
) where rn <= 20
4樓:
select *
from 表a
order by 時間欄位b
limit 20
5樓:何辰旭
select a, b from
(select a, b from a order by b)where rownum <= 20(抽出記錄數)order by rownum asc
6樓:巨蟹星
select top 20 欄位a from 表 order by 時間
7樓:匿名使用者
select top 10 a from 表a order by b
SQL查詢的排序問題
葉子部門是什麼意思?我理解的不知道對不對,樓主所說的葉子部門應該是本身沒有子部門,並且有父部門的部門吧 如果沒有父部門就無從談起按父部門排序了。在排序的條件使用子查詢即可。select from 表 a where fudepartment is not null and not exists se...
sql語句分組查詢前10條資料,sql如何實現分組並select出每組前10個
class classid classnameproduct classid proname numselect top 10 c.classid c.classname,sum p.num from class c,product p where p.classid c.classid group...
SQL查詢資料語句問題,SQL查詢資料語句問題
取n到m行 1.select top m from tablename where id not in select top n id from tablename order by id asc desc 2.select top m into 臨時表 或表變數 from tablename or...