Você pode usar
json_array_elements
para desaninhar JSON e array_agg
para aninhá-lo de volta após a filtragem. Algo assim:SELECT t.id, array_to_json(array_agg(j))
FROM your_table t, json_array_elements(t.jsonColumn) j
WHERE j->>'field' = 'abc'
GROUP BY id;