J'ai la table suivante appelée module_data. Actuellement, il a trois lignes d'entrées:
id data
0ab5203b-9157-4934-8aba-1512afb0abd0 {"title":"Board of Supervisors Meeting","id":"1i3Ytw1mw98"}
7ee33a18-63da-4432-8967-bde5a44347a0 {"title":"Board of Supervisors Meeting","id":"4-dNAg2mn6o"}
8d71ca35-74eb-4751-b635-114bf04843f1 {"title":"COPD 101", "id":"l9O0jCR-sxg"}
Les données sont une colonne jsonb. J'essaie d'interroger les colonnes de données en utilisant like. Quelque chose comme ce qui suit:
SELECT * FROM module_data WHERE title LIKE '%Board%';
J'ai consulté le support jsonb et il ne semble pas y avoir d'opérateur similaire. Si quelqu'un a des conseils.
Si la colonne de données est de type texte, utilisez ->>
lors de la distribution:
select * from module_data where data::json->>'title' like '%Board%'
Si c'est déjà json:
select * from module_data where data->>'title' like '%Board%'
Je pense que ça devrait être comme
select * from module_data where data->>'$."title"' like '%Board%'
alors seulement cela a fonctionné pour moi.