Accumulate values into an array with Postgres
If your PostggreSQL version is 9.4 or later use FILTER
clause:
select
array_agg(my_table.price) filter(where my_table.property_type = 'FLAT' ) as Flat_Current_Asking_Price,
array_agg(my_table.price) filter(where my_table.property_type = 'SEMIDETACHED') as Semidetached_Current_Asking_Price
from
my_table;