在MySQL中对包含字母和数字的值进行排序

5

我想要在一列中找到最大值。

列的值为: E00004, A00005, B00011, H-00001, E2100112, EFQ20098, ESSF20003

我只想按它们的数字排序,不用考虑字母。它应该像这样:我正在使用MYSQL

E2100112, ESSF20003, EFQ20098, B00011, A00005, E00004, H-00001

1个回答

3
假设最后5位数字是该数字:
select columnName from tableName
order by convert(int, right(columnName, 5)) desc

正如 @IkeWalker 所述,这个数字可以是任意大小的。因此,您需要使用 while 循环来检查该数字。

或者,您可以让一个函数为您执行此操作!

请参阅本文!


样本数据集中的一些数字超过了5位数,其中一个是7位数。 - Ike Walker

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接