【发布时间】:2015-08-12 15:06:45
【问题描述】:
我理解为什么索引顺序在 Rails 中很重要(来自答案 like these),例如,如果我有:
add_index :admin_users_pages, ["user_id", "page_id"]
所以我应该最快地放置“缩小行数”的字段,但我不确定这是什么意思。假设我有 2 个用户,有 2 个唯一 ID,有 300 个页面,有 300 个唯一 ID,哪个是最明智的选择?假设我有 150 个页面供第一个用户使用,150 个页面供第二个用户使用,那么索引是否类似于:
user_id page_id
1 1
1 2
1 3
或者page_id根本不会被排序,只有索引,所以我应该得到类似的东西:
user_id page_id
1 143
1 93
1 31
【问题讨论】:
-
请注意,在您引用的问题中,有以下语句:“将始终查询 user_views 表以查找两列,而不是仅查找一列”。这对我来说听起来很可疑——永远不会有“查找此用户查看过的所有文章”或“查找所有查看过此文章的用户”查询?
标签: ruby-on-rails database-design indexing