Count all rows for each DISTINCT
In this case you can use GROUP BY to get distinct column1 values, and instead of convert the date to text you can use EXTRACT function for this purpose.

select 
    colum1, 
    count(*) as number_of_rows
from 
    your_table
where 
    extract(year from date) = 2014
group by 
    column1;