使用STI时索引在哪里?

Mar*_*tto 3 database postgresql ruby-on-rails single-table-inheritance sti

我正在使用Rails和postgres.

我有几个使用STI的模型,我想知道我应该在表上放置索引以及为什么?

例如,假设我有以下设置:

class Comment < AR; end
class MovieComment < Comment; end
class MagazineComment < Comment; end


# Fake Comment Table
id:integer
title:string
body:text
type:string
Run Code Online (Sandbox Code Playgroud)

谢谢!

Rea*_*onk 7

type球场上,如果你只想要一个MovieCommentMagazineComment.如果你不这样做,你不需要这里的索引.我不确定AR是否type每次都使用,但只是为了确保.

因为该id字段是主键,所以索引应该已存在.

如果你想通过这两个查询type,并id确保你有一个组合索引.

在其他字段:取决于您查询的内容,但我想您只想检索这些.