我正在使用SQL server(MySQLver14.14Distrib5.7.21,Linux版(x86_64))。我想这样整理数据。

DocTyp-2649
DocTyp-2650
DocTyp-2651
DocTyp-2652
DocTyp-26036
DocTyp-26037
DocTyp-26038

我的问题是
SELECT doc_unique_id FROM docs ORDER BY doc_unique_id ASC

我的结果是
DocTyp-26036
DocTyp-26037
DocTyp-26038
DocTyp-2649
DocTyp-2650
DocTyp-2651
DocTyp-2652

你能做什么?

最佳答案

尝试此查询

SELECT doc_unique_id
FROM docs
ORDER BY cast(replace(doc_unique_id, 'DocTyp-', '') as int)

08-06 21:39