我在使用ORDER BY my_column ASC的MySQL SELECT语句上得到了奇怪的结果。
它按照“计算机”命令它们而非人类的方式对结果进行排序:
如何以正确的方式将其发送到ORDER BY?我的SELECT语句有几个LEFT JOINS--不确定是否会产生影响。
有关如何纠正此问题的任何建议?
答案 0 :(得分:1)
这样的事情应该这样做:
ORDER BY ABS(my_column) ASC
答案 1 :(得分:0)
您订购的列很可能是基于字符串(varchar,text等)的数据类型。您正在看到这种数据类型的词法正确排序。更改列以使用数值数据类型,或者(不太优选,因为为什么要将数值存储为字符串)将列转换为数字类型并对该转换执行排序。 / p>