當前位置:首頁 » 編程語言 » sql自定義排序

sql自定義排序

發布時間: 2022-11-17 23:38:55

sql語句中,選擇結果如何按指定順序排序

可以這樣實現題主所要求的排序

select * from A_TABLE1 where
name in(『張三』,『李四』,『王五』)
order by (case name when '張三' then 1
when '李四' then 2 else 3 end);

⑵ MySql的幾種排序方式

1、單列排序

SELECT * FROM test1 ORDER BY date_time

默認升序,降序後面接"DESC"即可。

2、多列排序

SELECT * FROM test1 ORDER BY `status`, date_time DESC

首先按`status`欄位排序,若`status`相等,則按data_time排序。

3、自定義排序

SELECT * FROM test1 ORDER BY FIELD(`status`, 3, 2, 4, 1, 5), date_time DESC

使用"FIELD()"函數,可指定順序。

4、其他條件排序

先按大於等於當前時間升序,再按小於當前時間降序,支持分頁。

SELECT * FROM test1 ORDER BY date_time < NOW(), IF(date_time < NOW(), 0, date_time), date_time DESC

附加SQL腳本

CREATETABLE`test1`(
`id`bigint(20)NOTNULLAUTO_INCREMENT,
`name`varchar(50)NOTNULL,
`date_time`datetimeNOTNULL,
`status`int(5)NOTNULL,
PRIMARYKEY(`id`)
)ENGINE=InnoDBAUTO_INCREMENT=1DEFAULTCHARSET=utf8
INSERTINTO`test1`VALUES
(NULL,'測試1','2018-03-0511:09:00',1),(NULL,'測試2','2018-03-0611:09:00',1),(NULL,'abc','2018-03-0711:09:00',1),
(NULL,'def','2018-04-0811:09:00',2),(NULL,'李某某','2018-04-1711:09:00',1),(NULL,'飯某某','2018-04-2013:09:00',2),
(NULL,'趙','2018-04-2001:09:00',4),(NULL,'倩','2018-04-2811:09:00',2),(NULL,'andy','2018-04-3011:09:00',1),
(NULL,'tony','2018-05-0811:09:00',4),(NULL,'tom','2018-05-0711:09:00',3),(NULL,'bill','2018-05-1811:09:00',3),
(NULL,'james','2018-06-0711:09:00',4),(NULL,'anthony','2018-06-1811:09:00',2),(NULL,'蓋茨','2018-04-2111:09:00',1),
(NULL,'部長','2018-04-2411:09:00',4),(NULL,'李總','2018-04-2011:09:00',5),(NULL,'張總','2018-04-2911:09:00',2),
(NULL,'王總','2018-04-1911:09:00',3),(NULL,'唐總','2018-05-0111:09:00',2);

參考的這篇文檔Mysql排序方式

⑶ sql server 2008中怎麼自定義列排序呢

查詢時輸入

selectuser,sex,agefromuser

就行,完全無影響的

⑷ 用SQL語句怎樣排序

這個可以根據地區編碼降序排列
代碼如下:

select * from 表名
order by 地區編碼 desc
中文屬性列名不記得要不要加上引號 你試下看看

⑸ 易語言SQL查詢自定義排序

withtas(
select'1'工號,'銷售'職位,'張三'姓名fromalunionall
select'2'工號,'倉管'職位,'李四'姓名fromalunionall
select'3'工號,'人事'職位,'王五'姓名fromalunionall
select'4'工號,'人事'職位,'趙六'姓名fromalunionall
select'5'工號,'銷售'職位,'馬奇'姓名fromal
)
select*fromtorderbydecode(職位,'銷售',1,'人事',2,3),工號;

如上答案純手工碼字沒有參與審核測試!@

⑹ sql 添加自定義排序

sql 添加自定義排序

Mysql :

SELECT (@i:=@i+1) AS ind ,欄位 FROM 表名 別名, (SELECT @i:=0) t WHERE `IsDeleted` = 0;

Oracle:

本就有rownum。可直接用:SELECT rownum,欄位 FROM 表名;

SqlServer:

SELECTROW_NUMBER()OVER(ORDERBYID) ROWNU,欄位FROM表名;

給表中所有數據重新排序

SELECT(SELECTCOUNT(`Id`)FROM表名 別名1WHERE別名1.`IsDeleted`=0AND別名1.`Id`<=別名2.`Id`)ASseq ,別名2.*FROM表名別名2WHERE別名2.`IsDeleted`=0AND別名2.`WLTId`=3;

⑺ sql 綜合查詢後自定義排序

sum(pkq)和Sum(pusermoney2)最好指定別名,不知道你的「很多」是指什麼?一個欄位?
按下面的改一下試試吧 order by 後面的排序欄位名自己加上

Select * from
(

select replace(pworktype,'-幹部','幹部') as pwork1,sum(pkq) ,很多, Sum(pusermoney2)
from money_main where sid='第八項目部2015年6月職工工資支付明細表' and pht='返聘' and pworktype not like '%幹部%'
group by pht
UNION
select pwork1,sum(pkq),很多, Sum(pusermoney2)
from money_main where sid='第八項目部2015年6月職工工資支付明細表' and pht<>'外來工' and pht<>'返聘' and pworktype not like '%幹部%'
group by pwork1
) as a order by ........

⑻ sql order by 怎麼自定義排序

排序有升序和降序之分,ASC表示升序排序,DESC表示降序排序。如果不指明排序順序,默認的排序順序為升序ASC。如果要降序,必須書寫DESC關鍵字
比如一個ZZZ表裡的XXX列需要降序,語句如下
select * from ZZZ order by XXX desc

⑼ sql的order by可以自定義排序函數嗎

可以的。order by 後面跟著的欄位名,而且現在的瓶頸基本是在sql上,所以盡量不要在sql里執行計算函數之類。因為運算和執行函數會消耗資源,使得sql執行變慢。函數之類的能在程序里執行盡量在程序里執行,現在cpu的瓶頸還很遠。

⑽ sql 按欄位指定值排序

sql語句的排序,有止是 asc,desc 簡單的正序、倒序排列,還可以根據需要欄位的值,來執行排序。可使用如下方式:

1.點擊新建查詢:

2.輸入如下語句:

  • orderby

  • case`A1`

  • when a2then1//當值為a2,排在第一個

  • whena3 then2//當值為a3,排在第二個

  • whena1 then3//當值為a1,排在第三個

  • end

  • asc//按上面順序,正序排列(也可為desc)

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

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

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

拓展資料:

sql常見語句

更新:update table1 set field1=value1 where 范圍

查找:select * from table1 where field1 like 』%value1%』 (所有包含『value1』這個模式的字元串)

排序:select * from table1 order by field1,field2 [desc]

求和:select sum(field1) as sumvalue from table1

平均:select avg(field1) as avgvalue from table1

最大:select max(field1) as maxvalue from table1

最小:select min(field1) as minvalue from table1[separator]

熱點內容
源碼車牌識別 發布:2025-01-13 19:49:06 瀏覽:974
inflateandroid 發布:2025-01-13 19:47:43 瀏覽:244
安卓電腦如何連手機熱點 發布:2025-01-13 19:40:52 瀏覽:142
pythonnumexpr 發布:2025-01-13 19:34:56 瀏覽:489
linuxpython版本查看 發布:2025-01-13 19:18:37 瀏覽:741
寶馬三系的哪個配置走量 發布:2025-01-13 19:12:14 瀏覽:697
區域網如何訪問伺服器 發布:2025-01-13 18:56:24 瀏覽:191
javaarraylist訪問 發布:2025-01-13 18:56:10 瀏覽:671
如何確定膠體是否配置成功 發布:2025-01-13 18:46:07 瀏覽:73
fgo緩存多大 發布:2025-01-13 18:42:13 瀏覽:972