按字符顺序排列char列

时间:2011-12-21 09:32:21

标签: postgresql sorting sql-order-by

如何以数字方式对字符列进行排序。 我有一列数字存储为字符。当我为这个专栏做一个ORDER BY时,我得到以下内容:

100D
131A
200
21B
30
31000A
etc.

最后可能有一个字母。 我如何以数字方式订购这些字符?我需要转换某些内容还是已经有SQL命令或函数?

1 个答案:

答案 0 :(得分:3)

您可以使用以下内容:

ORDER BY Cast(regexp_replace(yourcolumn, '[^0-9]', '', 'g') as integer)