Re: [SQL ] 關於排序
※ 引述《TonyQ (沉默是金)》之銘言:
: ※ 引述《sdallan ()》之銘言:
: : 使用 mysql
: : std_case , std_name , std_sch
: : 狀況 學校 姓名
: : ───────────────
: : 流失 高雄 測試
: : 試聽 台中 測試
: : 詢問 台北 測試
: : 班內 新竹 測試
: : 想要排序 狀況這個欄位 @@"
: : desc asc 兩種下去排都不是我要的。
: : 我希望的排法是 班內>詢問>試聽>流失
: : 至於學校、姓名,怎麼排,不重要XD
: : 還請麻煩幫忙解決
: SELECT std_case, std_name, std_sch,
: CASE std_case
: WHEN '班內' THEN 1
: WHEN '詢問' THEN 2
: WHEN '試聽' THEN 3
: WHEN '流失' THEN 4
: ELSE 5
: END
: FROM `student`
: ORDER BY 4 asc
:個人是覺得如果可以簡單的事情 , 就不要太複雜了.
select case 雖然可以解決問題,但不一定是最好的方法,
假設你的資料量是數萬筆,需求臨時改變其中幾個順序,
反而實務上使用第一種自建index方法比較好維護,
改SQL指令會改到死,提供參考
解決問題不一定只用聰明方法,有的時候笨一點會更好
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 120.126.127.108
推
05/18 11:16, , 1F
05/18 11:16, 1F
推
05/18 13:45, , 2F
05/18 13:45, 2F
討論串 (同標題文章)