看板 Database 關於我們 聯絡資訊
※ 引述《DrGod (跪求水桶)》之銘言: : 有一個欄位 rank : 內容是 排長,連長.......軍長 之類 : 能不能按軍長>師長>......>排長 這樣排序 : 我試過再加一個欄位 rankValue,然後按不同rank : 用字母,軍長=a 師長=b , order by rankValue 可以 : 但是比較麻煩 : 想請教能否直接排序 : 感謝 我使用SQL Server 2005做測試 有一資料表 T_TABLE 有一欄位RANK_NM 資料如下 RANK_NM 上校 中尉 上將 上尉 少將 中校 中將 少校 少尉 現在要依階級由大到小排列,SQL語法: SELECT * FROM T_TABLE ORDER BY CASE WHEN RANK_NM='上將' THEN 1 WHEN RANK_NM='中將' THEN 2 WHEN RANK_NM='少將' THEN 3 WHEN RANK_NM='上校' THEN 4 WHEN RANK_NM='中校' THEN 5 WHEN RANK_NM='少校' THEN 6 WHEN RANK_NM='上尉' THEN 7 WHEN RANK_NM='中尉' THEN 8 WHEN RANK_NM='少尉' THEN 9 END 就可以呈現下面的順序 RANK_NM 上將 中將 少將 上校 中校 少校 上尉 中尉 少尉 這樣是不用新加欄位 不知道這樣是否對你有幫助? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.194.80.177