先加条件,再从搜索结果group by
SELECT * FROM house_damage_ledger
WHERE household_head_id in(
SELECT household_head_id FROM (
SELECT household_head_id, area_code, to_char(disaster_date,'yyyy') as ye FROM house_damage_ledger
WHERE ye >= '2014' and ye <= '2021' and area_code like '45%'
)
GROUP BY household_head_id HAVING COUNT(household_head_id)>1
)
order by household_head_id