資料庫排序語句,資料庫排序問題(寫出SQL語句)

時間 2022-02-28 04:55:03

1樓:匿名使用者

在執行查詢結果時,預設情況下查詢結果無序排列。但我們有時需要對資料按一定規則進行排序。這時可以通過order by子句來實現這個功能。語法如下:

select <*,column [alias],...> from table

[where condition(s)]

[order by column[asc|desc]];

預設是asc指定的升序排列,desc用來指定降序排列。

1、升序排序:

使用order by子句時,預設情況下資料是按升序排列的,故可以用asc關鍵字指點升序排列,或者不指定,預設就是升序,顯示效果是一樣的,如下圖:

2、降序排序:

當需要查詢結果降序排列時,必須在排序後指定desc關鍵字。如下圖是檢視職員薪水的降序排列:

2樓:匿名使用者

資料庫的排序用order by語句實現。

工具:sqlserver 2008r2

步驟:1、有如下學生表:

2、現要求按學號正序(由小到大)的順序進行輸出,語句如下:

select * from 學生 order by 學號查詢結果:

3、再要求按學號正序(由大到小)的順序進行輸出,語句如下:

select * from 學生 order by 學號 desc結果:

3樓:匿名使用者

order by desc 例如將所有學生按學號順序降序排列;select * from student order by desc;

4樓:匿名使用者

sql=" select b.file_id,b.file_name,case a.

look_flag when '已看' then '' else a.look_flag end as 'fg',convert(char(10),a.tdata,121) as 'td1' ";

sql+=" from pubinfor_look_user a inner join pubinfor_file b ";

sql+=" on a.file_id=b.file_id order by file_id desc where look_user_ and menu_ " ; 再加一句:

sql+="order by b.file_id desc";

資料庫排序問題(寫出sql語句)

5樓:du瓶邪

將欄位依次寫在order by 後面即可 , 中間用逗號隔開。

view plaincopy to clipboardprint?

select * from 表 order by time , name

select * from 表 order by time asc , name asc

select * from 表 order by time desc , name desc

select * from 表 order by time asc , name desc

select * from 表 order by time desc , name asc

(注: asc 表示升序 , desc表示降序 , 未明確寫明排序方式時預設是升序)

與之類似的語法是 group by , 按多個欄位分組時 , 也是依次將多個欄位寫在group by 的後面 , 並用逗號隔開 , 範例如下:

view plaincopy to clipboardprint?

select time , name , sum(*) from 表 group by time , name

6樓:

想不規則排序,可以使用隨機排序

select id from table order by newid()

有疑問可以hi聊:)

7樓:臺凌青

簡單的:再增加一個排序欄位,主要讓它給id欄位排序select id from [table] order by [排序欄位]

id:4,7,6,5,3,8,2,9,1

[排序欄位] :1,2,3,4,5,6,7,8,9

8樓:擺渡浮橋

不規則也是一種規則。

如果你對輸出結果的順序有要求,就按fibona和_wangsen 的方法可以實現;

如果只是希望按照隨機順序輸出,可以用以下語句select id from tablename order by newid()

9樓:匿名使用者

加一個欄位showorder並指定排序欄位為showorer

然後把對應id的showorder的順序指定,然後按照showorder欄位排序。就是你要的排序了。

10樓:匿名使用者

mysql: select column from table order by rand() limit 9;

mssql: select top 9 column from table order by newid();

11樓:

隨機的話order by rand(id)

還是要順序 只能加一個欄位了

mysql資料庫,排序的語句

12樓:小丁創業

具體如下:

1、第一步,建立一個測試表,**如下,見下圖,轉到下面的步驟。

2、第二步,完成上述步驟後,插入測試的資料,**如下,見下圖,轉到下面的步驟。

3、第三步,完成上述步驟後,查詢表中所有記錄的數量,**如下,見下圖,轉到下面的步驟。

4、第四步,完成上述步驟後,按照value1欄位的升序,按value2欄位的降序編寫sql,**如下,見下圖。這樣,就解決了這個問題了。

13樓:匿名使用者

在執行查詢結果時,預設情況下查詢結果無序排列。但我們有時需要對資料按一定規則進行排序。這時可以通過order by子句來實現這個功能。語法如下:

select <*,column [alias],...> from table

[where condition(s)]

[order by column[asc|desc]];

預設是asc指定的升序排列,desc用來指定降序排列。

1、升序排序:

使用order by子句時,預設情況下資料是按升序排列的,故可以用asc關鍵字指點升序排列,或者不指定,預設就是升序,顯示效果是一樣的,如下圖:

2、降序排序:

當需要查詢結果降序排列時,必須在排序後指定desc關鍵字。如下圖是檢視職員薪水的降序排列:

14樓:雁子

舉例說明:

1.查詢所有學生記錄,按年齡升序排序

select *

from stu

order bysageasc;

2.查詢所有學生記錄,按年齡降序排序

select *

from stu

order byagedesc;

3.查詢所有僱員,按月薪降序排序,如果月薪相同時,按編號升序排序

select * from emp

order by sal desc,empno asc;

15樓:翱源來是你

select sname,sclass from student order by sscore desc

16樓:農夫喝山泉

select sclass,sname ,sscore from student order by sscore desc

17樓:it運維小曹

select sname,sclass

from student

order by sscore desc(降序)

sql查詢排序後前20條語句

18樓:大野瘦子

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)

19樓:babyan澀

直接用order by 和top結合的語句就可以實現。

建立表及插入資料:

如上,插入25條資料,現在要求按id排序,並取出id從小到大的前20條資料,可用如下語句:

select top 20 * from test order by id;

結果截圖:

20樓:匿名使用者

用rownum的話,你要先排好序,然後再用rownum生成偽列,再限制行數。

select c.d from (

select c,d,rownum rn from (select t.* from table1 order by b desc --降序

) t1

) where rn <= 20

21樓:

select *

from 表a

order by 時間欄位b

limit 20

22樓:何辰旭

select a, b from

(select a, b from a order by b)where rownum <= 20(抽出記錄數)order by rownum asc

23樓:巨蟹星

select top 20 欄位a from 表 order by 時間

24樓:匿名使用者

select top 10 a from 表a order by b

sql裡面的排序語句desc和asc有什麼區別?

25樓:西西哩的小馬甲

區別:用 desc 表示按倒序排序(即:從大到小排序) ---降序排列

用 acs   表示按正序排序(即:從小到大排序)---升序排列對計算機軟體的維護主要有以下幾點:

(1)對所有的系統軟體要做備份。當遇到異常情況或某種偶然原因,可能會破壞系統軟體,此時就需要重新安裝軟體系統,如果沒有備份的系統軟體,將使計算機難以恢復工作。

(2)對重要的應用程式和資料也應該做備份。

(3)經常注意清理磁碟上無用的檔案,以有效地利用磁碟空間。

(4)避免進行非法的軟體複製。

(5)經常檢測,防止計算機傳染上病毒。

(6)為保證計算機正常工作,在必要時利用軟體工具對系統區進行保護。

總之,計算機的使用是與維護分不開的,既要注意硬體的維護,又要注意軟體的維護。

關於mysql資料庫排序的問題

在執行查詢結果時,預設情況下查詢結果無序排列。但我們有時需要對資料按一定規則進行排序。這時可以通過order by子句來實現這個功能。語法如下 select column alias from table where condition s order bycolumn asc desc 預設是as...

資料庫問題,資料庫問題

一張表查資料不用建立檢視的吧,直接插入資料庫就可以 參考 檢視應用的舉例 例子5 3 使用with check option子句問題提出 若建立檢視ygb view,其程式清單如下 create view ygb view as select from 員工表 where 員工表.性別 女 執行下列...

求解SQL資料庫兩張表資料的排序問題

select dept id as id,dept name as name from d dept union all select unit id as id,unit name as name from d unit order by id asc 因為兩個表的id都是字元型別的,所以排序都是...