PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come posso interrogare una stringa da JSON in base a un'altra stringa all'interno del JSON in PostgreSQL?

Puoi utilizzare json_array_elements in un join laterale, quindi interroga i campi che stai cercando:

SELECT
  field -> 'fieldid' AS id,
  choice -> 'size' AS size
FROM
  my_table,
  json_array_elements(json_column -> 'base' -> 'fields') field,
  json_array_elements(field -> 'choices') choice
WHERE
  field ->> 'answer' = choice ->> 'choiceid'