在按ASC中的列名(equipment_no)排序后,我有一列具有如下值的列,并且想知道如何正确地对其进行排序,如下列表所示。
SELECT equipment_no FROM fas_details WHERE equipment_no LIKE 'T%' ORDER BY equipment_no
请告诉我您的建议。谢谢。
mysql如何排序
T - AG - 01
T - AG - 02
T - AG - 07
T - AG - 08
T - AG - 09
T - AG - 10
T - AG - 100
T - AG - 101
T - AG - 102
T - AG - 103
T - AG - 104
T - AG - 11
T - AG - 12
T - AG - 13
我希望它成为
T - AG - 01
T - AG - 02
T - AG - 07
T - AG - 08
T - AG - 09
T - AG - 10
T - AG - 11
T - AG - 12
T - AG - 13
T - AG - 100
T - AG - 101
T - AG - 102
T - AG - 103
T - AG - 104
我认为您也要在考虑设备订购的数字部分的同时按字母升序对equipment_no进行排序。
SELECT equipment_no FROM fas_details WHERE equipment_no LIKE 'T%' ORDER BY substring(equipment_no,1,9), substring(equipment_no,10)*1
我假设equipment_no的前9个字符是字母,而其余字符是数字字符。将数字子字符串乘以1会将其强制为数字。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句