Railsで重複しない値を取得する方法(distinct)

こんにちは!

今回はRailsで重複しない値を取得する方法(distinct)についてまとめます。

やりたいこと

  • DBから重複した値を除外して取得したい

distinctメソッド

  • SQLのDISTINCTと同様に重複を除外する

使用例

# Itemモデルから重複しないレコードを全て取得
Item.distinct
=> [
 #<Item: 0x000...
 id: 1
 price: 200 >,
 #<Item: 0x000...
 id: 2
 price: 150 >
 ]
# Itemモデルからpriceカラムの値が重複しないレコードを全て取得
# SELECT DISTINCT "items"."price" FROM "items"
Item.distinct.pluck(:price)
=> [ 200, 150 ]

おわりに

今回はRailsで重複しない値を取得する方法(distinct)についてまとめました。SQLのDISTINCTと同じ動作をするのでわかりやすいですね。

69/100