所以我有一个商店数据库,每个商店的名字前面都有一个数字。它们是按随机顺序添加的,但我希望它们按1到213的顺序显示。我的问题是,当我使用orderbyvalue()时,它会将它们显示为。
诸若此类。我需要它们显示1,2,3,4,5等等,而不是1,10,11,12,13等等。
我该用什么来解决这个问题?
发布于 2017-06-26 14:41:11
正如John评论的那样,您得到的顺序是预期的:因为您存储的是字符串,所以节点是按字典顺序排列的。
如果要按数字排序,则必须将值存储为数字,或者(在更可能的情况下)将值存储在与数字顺序相同的格式中。例如。
或
在这种情况下,字符串的填充/前缀是非常正常的。其中一个主要缺点是,在启动项目时,您必须确定要使用多少个字符作为数字。
发布于 2017-12-14 14:43:09
前导零可能是一个暂时的解决方案,但是对于用户的体验来说,这是错误的。您必须实现排序函数。此外,如果您的系统需要处理999多家商店,您就不必为此修改代码。
https://stackoverflow.com/questions/44759707
复制相似问题