SELECT DISTINCT(YEAR(created_at)) FROM your_table
, вероятно, будет работать, но сильно зависит от используемой базы данных (это, конечно, будет работать с MySQL).
ActiveRecord
- неприятность, если вы хотите использовать пользовательские операторы SQLиспользование операторов Ruby, таких как
Model.all.map(&:created_at).map(&:year).uniq
, действительно очень полезно, хотя может быть очень медленным из-за загрузки и перебора всех ваших записей.