用于对列部分值进行排序的SQL查询

时间:2012-06-07 11:45:17

标签: mysql sql

我需要对列的部分值进行排序。

例如,我有一个包含列(代码,名称)的表员工。 Code列的值格式为DEPT:SR_NO。

我只需要对Code列的SR_NO值进行排序。

上述情况仅为实时情景的一个例子。

任何建议都将不胜感激。

谢谢,

2 个答案:

答案 0 :(得分:4)

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

答案 1 :(得分:0)

正则表达式,是的。您也可以执行Order by Right(Name, Len(Name)-Instr(Name, ":"))之类的操作来获取冒号右侧的所有字符并按其排序。