0

使用这样迁移的数据库列:

add_column :documents, :array_column, :string, array: true

我知道可以这样做来查询数组的任何元素:

Document.where("'foo' = ANY (array_column)")

我的问题是我是否可以专门查询数组的第二个(或任何其他单个)元素?

4

1 回答 1

2

您可以使用通常的数组索引表示法,但请记住 SQL 数组是从 1 开始的,而不是从 0 开始的:

Document.where("array_column[2] = 'foo'")

精美的手册有更多关于访问数组的内容。

于 2013-10-15T18:37:32.610 回答