當前位置:首頁 » 編程語言 » sql查詢排序語句

sql查詢排序語句

發布時間: 2022-10-05 04:05:39

⑴ 關於sql排序的語句,求助

->
if
not
object_id(N'Tempdb..#T')
is
null
drop
table
#T
Go
Create
table
#T([ID]
int,[CategoryName]
nvarchar(8),[Parent]
nvarchar(5))
Insert
#T
select
1,N'簡體版',N'0'
union
all
select
6,N'光電開關FPJ1',N'0.1'
union
all
select
7,N'光電開關DR',N'0.1'
union
all
select
8,N'磁性開關',N'0.1.7'
union
all
select
9,N'光電開關CR',N'0.1.7'
union
all
select
10,N'光電開關DR',N'0.1.7'
union
all
select
12,N'光電開關FPJ1',N'0.1.7'
union
all
select
13,N'光電開關CR',N'0.1'
union
all
select
14,N'磁性開關',N'0.1.7'
union
all
select
15,N'變位感測器',N'0.1'
Go
Select
a.categoryname
AS
lev1,
b.categoryname
as
lev2,
c.categoryname
as
lev3
from
#T
a
left
join
#T
b
on
rtrim(a.[Parent])+'.'+rtrim(a.[ID])=b.[Parent]
left
join
#T
c
on
rtrim(b.[Parent])+'.'+rtrim(b.[ID])=c.[Parent]
where
a.[CategoryName]=N'簡體版'

⑵ SQL語句怎麼寫先按時間排序,再按姓名排序

select client,ID,taskdate from 表名 order BY client asc,taskdate,ID desc(如果讓client為降序的話order by改成group by,asc改成desc,ID要升序desc改成asc)

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

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 的後面 , 並用逗號隔開 , 範例如下:

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

(2)sql查詢排序語句擴展閱讀

可以把 SQL 分為兩個部分:數據操作語言 (DML) 和 數據定義語言 (DDL)。

SQL (結構化查詢語言)是用於執行查詢的語法。但是 SQL 語言也包含用於更新、插入和刪除記錄的語法。

查詢和更新指令構成了 SQL 的 DML 部分:

SELECT- 從資料庫表中獲取數據

UPDATE- 更新資料庫表中的數據

DELETE- 從資料庫表中刪除數據

INSERT INTO- 向資料庫表中插入數據

SQL 的數據定義語言 (DDL) 部分使我們有能力創建或刪除表格。我們也可以定義索引(鍵),規定表之間的鏈接,以及施加表間的約束。

    SQL 中最重要的 DDL 語句:

CREATE DATABASE- 創建新資料庫

ALTER DATABASE- 修改資料庫

CREATE TABLE- 創建新表

ALTER TABLE- 變更(改變)資料庫表

DROP TABLE- 刪除表

CREATE INDEX- 創建索引(搜索鍵)

DROP INDEX- 刪除索引

⑶ SQL排序語句

你的寫法是錯誤的,按照你的寫法在對n進行降序排序時,第一個m升序排序結果會失效,等於最終只讀n做了降序排序,而且你的語句本身也比較冗餘。

正確的寫法是:

SELECT * FROM a ORDER BY m ASC ,n DESC;

我們可以通過一些實例來具體分析order by 子句的用法:

假設有Orders 表:

注意:在以上的結果中有兩個相等的公司名稱 (W3School)。只有這一次,在第一列中有相同的值時,第二列是以升序排列的。如果第一列中有些值為 nulls 時,情況也是這樣的。

⑷ sql中的排序,如何使用倒序

sql中排序倒序使用desc關鍵字,一般需要和order by 合用,示例sql語句如下:

例如:select * from student order by age desc;

意思是查詢學生表,以學生年紀倒序排列。

排序採用 order by 子句,order by 後面跟上排序欄位,排序欄位可以放多個,多個採用逗號間隔,order by默認採用升序(asc),如果存在 where 子句,那麼 order by 必須放到where 語句後面。

例如:select ename,job,ename from emp order by job desc,sal desc;

意思是查詢員工表按照 job 和薪水倒序排序 。


(4)sql查詢排序語句擴展閱讀

sql中升序(正序)用法介紹:

1、使用asc關鍵字

例如:select ename,sal from emp order by sal asc;

手動指定按照薪水由小到大排序(升序關鍵字 asc)

2、不加asc關鍵字,系統默認升序

例如:select ename,job,sal from emp where job = 」MANAGER」order by sal;

取得job 為 MANAGER 的員工,按照薪水由小到大排序(系統默
認由小到大)

⑸ sql 語句排序 在查詢結果中按人數降序排列,若人數相同,則按課程號升序排列

代碼如下:

select xuehao as 學號,score as 總成績

from CJBwhere xuehao in(

select xuehao from XSB)

group by xuehao,score

order by score desc,xuehao

select id as 學號, sum(score) as 總成績

from 成績表

group by id

order by sum(score) desc, id asc

(5)sql查詢排序語句擴展閱讀

ORDER BY 語句用於對結果集進行排序。

ORDER BY 語句用於根據指定的列對結果集進行排序。

ORDER BY 語句默認按照升序對記錄進行排序。

如果您希望按照降序對記錄進行排序,可以使用 DESC 關鍵字。

order by 是用在where條件之後,用來對查詢結果進行排序。

order by 欄位名 asc/desc 。

asc 表示升序(默認為asc,可以省略)。

desc表示降序。

order by 無法用於子查詢,否則會報錯:除非另外還指定了 TOP 或 FOR XML,否則,ORDER BY 子句在視圖、內聯函數、派生表、子查詢和公用表表達式中無效。

⑹ 關於一個排序的SQL語句寫法

sql語句這樣寫:
select
表1.姓名,表2.成績
as
成績
form
表1
left
join
表2
on
表1.成績=表2.id
有人覺得這樣寫過於復雜化,但這是最標準的,當你知道是什麼意思後,其它復雜關系的資料庫的聯合查詢你就會了。
表2.成績
as
成績:這樣用是因為兩個表中都有成績,如果不這樣用可能查詢結果欄位可能會是「表2_成績」之類的名字,要看你的是什麼資料庫。
表1
left
join
表2:left
join是左鏈接,表示表2的內容以表1為標准鏈接進入查詢結果,當表2中有表1沒有對應關系的數據時會丟棄,如果不用這種方式,則在當表1隻有張三李四時查詢結果會有三條記錄,第三條沒有姓名,成績是差。
on
表1.成績=表2.id:這是鏈接的條件。

⑺ 匯總計算再排序的sql查詢語句如何寫

SQL中先求和再排序,舉例及解決方法如下:
1、若要查詢表t1中col2欄位按照col1欄位分別求和,並按照求和結果從小到大排序。
2、查詢語句為:

SELECT col1,SUM(col2) FROM t1GROUP BY col1ORDER BY SUM(col2);

3、語句解釋:GROUP BY col1是指按照col1欄位聚合,SUM(col2)指聚合方式為求和,聚合目標為col2。ORDER BY SUM(col2)是指按求和後的結果進行排序。

⑻ sql 升序降序排列

降序:SELECT * FROM kc ORDERBYcpbh DESC

升序:SELECT * FROM kc ORDERBYcpbhASC

語法:

sql可以根據欄位進行排序,其中,DESC表示降序,ASC表示升序

order by 欄位名 DESC;按照欄位名降序排序

order by 欄位名 ASC;按照欄位名升序排序

實例:

一、/*查詢學生表中姓名、學號,並以學號降序排序*/

select name,StuID from Students_information order by StuID desc /**order by 以什麼排序,默認為升序,desc是降序*/

二、/*查詢學生表中前5名學生的姓名,學號,並以學號升序排列*/

select top 5 name,StuID from Students_information order by StuID /*order by 默認為升序*/

(8)sql查詢排序語句擴展閱讀

一、ORDER BY 語句

ORDER BY 語句用於根據指定的列對結果集進行排序。

ORDER BY 語句默認按照升序對記錄進行排序。

如果您希望按照降序對記錄進行排序,可以使用 DESC 關鍵字。

二、SQL 排序多個欄位

order by 多個欄位,每個欄位後面都有排序方式,默認ASC

例如:select table a order by a.time1 ,a.time2 desc,a.time3 asc

⑼ 怎樣用SQL語句按日期進行從高到低進行排序

用SQL語句按日期進行從高到低進行排序:select * from tmp order by time desc;

⑽ 如何用SQL語句實現查找與排序

sql語句的查找:select
欄位名
from
表名
where
條件;
sql語句的排序:select
欄位名
from
表名
order
by
欄位
desc(降序);
select
欄位名
from
表名
order
by
欄位
asc(升序)。

熱點內容
androidactivity生命 發布:2024-04-27 07:33:48 瀏覽:84
win2008伺服器搭建網站 發布:2024-04-27 07:26:51 瀏覽:640
java的vector 發布:2024-04-27 07:05:00 瀏覽:204
舊電腦共享伺服器 發布:2024-04-27 06:32:21 瀏覽:339
java程序練習 發布:2024-04-27 06:24:00 瀏覽:438
sql30 發布:2024-04-27 06:22:10 瀏覽:55
怎樣防止sql注入 發布:2024-04-27 06:11:25 瀏覽:236
安卓為什麼不能登蘋果系統的游戲 發布:2024-04-27 06:11:23 瀏覽:601
編程日課 發布:2024-04-27 05:56:54 瀏覽:620
漏洞上傳工具 發布:2024-04-27 05:50:58 瀏覽:717