我正在尝试编写一个mysql查询。一个名为'fileno'的数据字段具有varchar类型,数据采用以下方式:
===================
id | fileno
===================
1 | 16/12
2 | 15/91
3 | 15/70
4 | 16/07
===================
现在我需要按降序排序字段,我希望字段按降序排序。但不能正常工作。预期的订单如下:
16/12
16/07
15/91
15/70
我尝试了以下查询:
SELECT
id,
fileno
FROM
customer_request
ORDER BY
fileno DESC
答案 0 :(得分:2)
SELECT id, fileno
FROM yourTable
ORDER BY CAST(SUBSTRING(fileno, INSTR(fileno, '/') + 1) AS UNSIGNED) DESC,
CAST(SUBSTRING(fileno, 1, INSTR(fileno, '/') - 1) AS UNSIGNED) DESC
在这里演示:
答案 1 :(得分:0)
/
并按DESC
顺序对其进行排序
以下是示例查询:
SELECT id, fileno
FROM customer_request
ORDER BY REPLACE(fileno, '/', '') DESC