2012-06-07 55 views
2

我需要對列的部分值進行排序。用於對列部分值進行排序的SQL查詢

例如,我有一個表員工列(代碼,名稱)。 Code列的值的格式是DEPT:SR_NO。

我需要僅對代碼列的SR_NO值進行排序。

上面的場景僅僅是實時場景的例子。

任何建議,將不勝感激。

感謝,

+3

我建議你將列拆分成表格中的2列。然後,查詢將很容易。 –

+0

'SR_NO'應該是數字嗎? – Quassnoi

+0

雅DEPT是字母&SR_NO是數字。 – SmartSolution

回答

4
SELECT SUBSTRING_INDEX(code, ':', 1) AS dept 
     SUBSTRING_INDEX(code, ':', -1) AS sr_no 
FROM mytable 
ORDER BY 
     sr_no 
+1

感謝哥們,它幫助。我終於像這樣使用它: SELECT * FROM EMPLOYEE ORDER BY SUBSTRING_INDEX(CODE,':', - 1) – SmartSolution

0

正則表達式,是的。您還可以執行諸如Order by Right(Name, Len(Name)-Instr(Name, ":"))之類的操作來拾取冒號右側的所有字符並按此排序。

相關問題