gpt4 book ai didi

ruby-on-rails - rails-用户订购时,是否应该在表中添加索引?

转载 作者:行者123 更新时间:2023-12-03 14:34:25 25 4
gpt4 key购买 nike

您好我的其中一张模特照片:

default_scope :order => 'photos.created_at DESC, photos.version DESC'


鉴于我正在按CREATED_AT和Version进行订购...我应该在CREATED_AT上拥有数据库索引吗?

谢谢

最佳答案

以下内容基于我的PostgreSQL经验,但也可能适用于MySQL和其他应用程序。

如果您计划从该表中检索大量记录或使用分页,则在ORDER BY中使用的字段上的索引将非常有用。

您应该以相同顺序在所有订单字段上创建索引。如果在ASC中混合使用DESCORDER BY,则需要创建具有这些特定顺序的索引以充分利用索引。

适合您的photos表的ActiveRecord迁移为:

add_index :photos, [:created_at, :version]


我建议在添加索引之前和之后查看带有类似生产数据的 EXPLAIN ANALYZE输出,以确认它具有您想要的效果。

关于ruby-on-rails - rails-用户订购时,是否应该在表中添加索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4445507/

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