У меня есть таблица PostgreSQL с сотнями строк, каждая из которых содержит значение в столбце date_creation (тип date).
Значения выглядят следующим образом:
2010-04-26
2008-08-18
2015-11-11
2010-10-20
2010-03-23
2015-04-08
Теперь я хотел бы узнать, как часто встречается каждый год.
например в приведенном выше примере 2010 встречается 3 раза, 2015 встречается 2 раза, 2008 встречается 1 раз
Первая часть, как получить отличные годы от даты, отлично работает:
SELECT
DISTINCT DATE_PART('year', CAST(date_creation AS DATE)) AS years_available
FROM metadata
WHERE date_creation is not NULL
Но я не могу понять, как узнать, как часто бывает год.
Я нашел здесь различные ответы, в которых используется COUNT, и хотя на первый взгляд они кажутся логичными, ни один из них не вернет ничего полезного. Я предполагаю, что он связан с запросом, включающим оператор DISTINCT.