gpt4 book ai didi

mysql - 在 MySQL 中使用字符串的数字组件对字符串进行数字排序的首选方法是什么?

转载 作者:行者123 更新时间:2023-11-29 18:33:21 26 4
gpt4 key购买 nike

我有一列字符串,如下所示:

ABC-10
ABC-20
ABC-40
...
ABC-130
ABC-410

我希望通过数字对它们进行排序。

我知道两种方法:

SELECT * from table 
ORDER BY SUBSTRING_INDEX(model, '-', -1) + 0;

SELECT * from table 
ORDER BY CAST(RIGHT(model, LENGTH(model) - 4) as unsigned);

两者似乎给出了相同的结果。一个比另一个更受青睐吗?

最佳答案

当数字串较短时,优先使用第一种方法。转换将比订购 4 位数字符串花费更长的时间

当数字字符串很长(必须非常长)时,首选第一种方法,因为转换不会像对具有如此多字符的字符串进行排序那样花费那么长的时间。与字符串相比,数字非常容易排序

关于mysql - 在 MySQL 中使用字符串的数字组件对字符串进行数字排序的首选方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45512026/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com