mysql - 按文本和数字排序

标签 mysql sql

我的数据库中有一个文本列,用于存储房屋名称和号码列表,当我按 ASC 订购时,它的输出如下:

"Name No 1"
"Name No 12"
"Name No 14"
"Name No 5"
"Name No 7"

有没有一种简单的方法可以按实际顺序订购它,例如:

"Name No 1"
"Name No 5"
"Name no 7"
"Name No 12"
"Name No 14"

如果这是我的网站,我会有两列,一列是名称,另一列是数字,但我无法更改它,因为它是一个实时站点

最佳答案

ORDER BY LENGTH(colname) ASC,colname ASC

这可能与您要获得“正确的顺序”一样接近。

关于mysql - 按文本和数字排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22093774/

相关文章:

mysql - 显示 ID 共享来自同一属性的 2 个值

Python MySQLdb 在一行中多次使用 %S

php - 使用PHP连接MySQL数据库的连接类,插入、更新、删除

mysql - 替换所有行中的值

javascript - 下拉菜单中缺少城市列表 (4happydays.com)

sql - oracle在选择内部调用存储过程

sql - 在 SQL Server 中声明 XML 问题

mysql - ASP.NET 中的 SQL 参数列

mysql - 有没有办法更新表上的字段并影响另一个表上的另一个字段?

SQL Pivot - 多行多列