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

Wie rufe ich mit jsonb (PostgreSQL) Elemente mit einem bestimmten Wert ab, der als Array gespeichert ist?

Sie können IN zusammen mit json_array_elements auch direkt verwenden:

Recipe.where("'405' IN (SELECT json_array_elements(data->'category_ids')::text)")

Und wenn Ihre Spalte eine jsonb-Spalte ist, können Sie ähnlich vorgehen:

Recipe.where("'405' IN (SELECT jsonb_array_elements(data->'category_ids')::text)")