2016-04-10 4 views
0

私はさまざまなデータを持つ巨大なテーブルを持ち、1つのカラムは日付を表します。日付データ型です。その日から可能なすべての年を変数に代入したい。例えば重複のないテーブルの日付から年の部分のみを選択

| dates | 
+------------+ 
| 2016-04-04 | 
| 2016-05-05 | 
| 2016-06-06 | 
| 2017-05-02 | 
| 2017-01-05 | 
| 2018-07-05 | 

は、私は私の変数は次のようになりたい:

@years = [2016, 2017, 2018] 
+0

使用しているデータベース? – Pavan

+0

開発中の@Pavan sqlite、プロダクションでは – Kunok

答えて

2
years = Model.pluck(:date).map(&:year).uniq 
+0

これはそれです。それをフォーマットしてください。私はあなたの答えを受け入れるでしょう(コードをフォーマットするにはCTRL + K) – Kunok

+0

@Kunokこれは、行の数が少なく、そのままにしておくと良い答えです。行数が多い場合は、データベースから多くの行を取得しないようにするために、データベース自体がすべての作業を実行するために、通常はより良い方法です。リンク先の質問で受け入れられた回答は、どのように表示されます。 –