能不能按照輸入的順序排序 |
答題得分者是:shpeng
|
a6475
高階會員 發表:67 回覆:230 積分:154 註冊:2002-09-15 發送簡訊給我 |
請問SQL 能不能按照輸入的順序排序。
像,輸入姓=廖,藍,陳
就會找出這三個姓的人,然後照我輸入的名字順序排序
廖xx
廖xx
藍xx
藍xx
陳xx 我同學給我一串怪語法,但是在SQL Server 2000不能跑
在Access卻可以,誰能幫我看看怎麼在SQL Server 2000跑
select id from xxx where id='廖' or id='藍' or id='陳' order by id='廖', id='藍', id='陳' 月夜 光明 藍更愁
------
月夜 光明 藍更愁 |
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
引言: 請問SQL 能不能按照輸入的順序排序。 像,輸入姓=廖,藍,陳 就會找出這三個姓的人,然後照我輸入的名字順序排序 廖xx 廖xx 藍xx 藍xx 陳xx 我同學給我一串怪語法,但是在SQL Server 2000不能跑 在Access卻可以,誰能幫我看看怎麼在SQL Server 2000跑 select id from xxx where id='廖' or id='藍' or id='陳' order by id='廖', id='藍', id='陳' 月夜 光明 藍更愁select id from xxx where id like '廖%' union select id from xxx where id like '藍%' union select id from xxx where id like '陳%' ... Note : select table count must <= 16. /* 使用中文很辛苦,中華男兒當自強 */ |
shpeng
初階會員 發表:6 回覆:67 積分:49 註冊:2002-12-21 發送簡訊給我 |
|
a6475
高階會員 發表:67 回覆:230 積分:154 註冊:2002-09-15 發送簡訊給我 |
引言:請問一下,如果是要完全等於呢? 像輸入 廖天丁 藍小五 陳小扁 輸出 廖天丁 廖天丁 藍小五 陳小扁 陳小扁 月夜 光明 藍更愁SELECT * FROM XXX WHERE SUBSTRING(ID,1,1) in ('廖','藍','陳') ORDER BY CASE SUBSTRING(ID,1,1) WHEN '廖' THEN 1 WHEN '藍' THEN 2 WHEN '陳' THEN 3 END==取之於斯,用之於斯== 發表人 - shpeng 於 2003/01/27 13:58:29
------
月夜 光明 藍更愁 |
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
引言: 請問一下,如果是要完全等於呢? 像輸入 廖天丁 藍小五 陳小扁 輸出 廖天丁 廖天丁 藍小五 陳小扁 陳小扁 月夜 光明 藍更愁一樣的啊... 參考 shpeng 兄的用法 SELECT * FROM XXX WHERE ID in ('廖天丁','藍小五','陳小扁') ORDER BY CASE ID WHEN '廖天丁' THEN 1 WHEN '藍小五' THEN 2 WHEN '陳小扁' THEN 3 END另外, Mickey 兄用的方式可以改為 subquery 的方式才能夠排序哦, 否則會依照首欄排序而非 union 的順序排序哦, 更改為: select id from ( select id, 1 as sortorder from xxx where id like '廖%' union select id, 2 as sortorder from xxx where id like '藍%' union select id, 3 as sortorder from xxx where id like '陳%' ) tmp order by sortorder |
a6475
高階會員 發表:67 回覆:230 積分:154 註冊:2002-09-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |