从SQL中的日期时间戳提取年份

从SQL中的日期时间戳提取年份,sql,postgresql,Sql,Postgresql,我试图将数据库中的一列转换为时间戳格式,然后我想查看每年的计数数 我有: SELECT (column_name::date), count(*) EXTRACT(YEAR FROM column_name) FROM table GROUP BY column_name; '我收到一条错误消息,说没有函数与给定的名称和参数类型匹配。您可能需要添加显式类型转换。” 提取是错误的函数吗 如果column\u name是timestamp,那么您可能需要这样的内容 搜索文档 SEL

我试图将数据库中的一列转换为时间戳格式,然后我想查看每年的计数数

我有:

SELECT
    (column_name::date), count(*)
    EXTRACT(YEAR FROM column_name)
FROM table
GROUP BY column_name;
'我收到一条错误消息,说没有函数与给定的名称和参数类型匹配。您可能需要添加显式类型转换。”


提取是错误的函数吗

如果
column\u name
是timestamp,那么您可能需要这样的内容

搜索文档

SELECT
    EXTRACT(YEAR FROM column_name), count(*)        
FROM table
GROUP BY EXTRACT(YEAR FROM column_name);

如果
column\u name
是字符串,您需要函数

什么类型的
column\u name
?请阅读,这里是一个非常有趣的地方,它返回双精度。。。大多数情况下,您需要
提取(列名称中的年份)::int