如何使用SQL查询从字母数字中获取数值并按数字排序

时间:2016-10-06 04:21:05

标签: mysql sql

在MySQL DB中

Colum1

Drill 14"
Drill 15"
Drill 10" 
Drill 11"
Drill 5"

我想得到数值并按照这样排序

Colum1

5
10
11
14
15

请注意,我不想使用声明,因为它不被Jasper接受 - 所以如果有简单的SQL可以做到它应该没问题

2 个答案:

答案 0 :(得分:2)

您可以使用 SUBSTRING_INDEX

ORDER BY SUBSTRING_INDEX(Colum1,' ', -1)+0 ASC

<强>演示:

SET @str := 'Drill 11';

SELECT SUBSTRING_INDEX(@str,' ',-1)+0 AS number;

<强>输出:

number 
11

在这里演示:

SQLFiddle

答案 1 :(得分:1)

试试这个

        SELECT * 
        FROM Table_Name 
        WHERE Colum1 REGEXP '^[0-9]+$';
相关问题