Redis插入顺序混乱还是排序奇怪?
我有一些这样写的代码:
foreach ($models as $model) { Redis::hset('model_App\ServiceModel', $model[$primaryKey], json_encode($model->toArray()));
}
模型在foreach(alpha,绿色,zed)之前按名称字段的字母顺序排列
数据一旦添加到redis中,看起来将如下所示:
row | key | value1 490 {"service_id":490, "name":"zed"}
2 489 {"service_id":489, "name":"alpha"}
3 491 {"service_id":491, "name": "green"}
有谁知道为什么我的订单被忽略/覆盖?我是否缺少有关Redis工作原理的信息?“行”是否像MySQL数据库中的自动递增ID,如果是的话,它如何在“
alpha”之前获得“ zed”?
这是我第一次“认真”使用它,我感谢我能得到的所有建议。
回答:
Redis的哈希是无序的-
这是预期的行为。如果需要排序,请使用“排序集”,SORT
命令或(最好)对客户端中的数据进行排序。
以上是 Redis插入顺序混乱还是排序奇怪? 的全部内容, 来源链接: utcz.com/qa/414384.html