PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Wie filtert man das JSON-Array für jede zurückgegebene Zeile?

Sie können json_array_elements verwenden um JSON und array_agg zu entschachteln um es nach dem Filtern wieder zu verschachteln. Etwa so:

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;