I'm trying to select all entities, even if they're not match expression, but this one returns only 'true' values.
SELECT entity_id, regexp_matches(error_params, '"select_flight"') IS NOT NULL
GROUP BY 1
If I'm understanding your question correctly, you can use
select entity_id, count(case when error_params like '%select flight%' then 1 end) cnt from mytable group by 1