我有一个带有文本列prono
的表,其中的值将包含四(4)个组合数字,中间是-
。
示例数据:
id prono
01 012-40-45-7894
02 045-12-13-8048
03 012-40-44-9704
我想获取整行,并根据第二个和第三个数字从数据库中对列表进行排序。有没有办法做到这一点?
目前,我暂时将它们作为一个整体进行排序。
mysqli_query($connection,"SELECT * FROM table ORDER BY prono");
它将这样输出(基于上面的示例数据):
id prono
03 012-40-44-9704
01 012-40-45-7894
02 045-12-13-8048
但是我需要的输出是这样的(它将基于第二和第三种数字模式进行排列):
id prono
02 045-12-13-8048
03 012-40-44-9704
01 012-40-45-7894
这可行吗?如何?
最佳答案
尝试使用子串SELECT * FROM table ORDER BY substr(prono,5,2), substr(prono,8,2)
子串为您提供了位置5长度2的prono子串,以及另一个从8长度2的残存字符串(您需要订购的子串。更多信息,请参见Mysql.com