sql >> データベース >  >> RDS >> PostgreSQL

PostgreSQLでjsonb配列を検索しています

    あなたはexistsを使うことができます :

    SELECT * FROM 
        (SELECT 
            '[{"id":1,"msg":"testing"},{"id":2,"msg":"tested"},{"id":3,"msg":"nothing"}]'::jsonb as data) 
        as jsonbexample 
    WHERE 
        EXISTS (SELECT 1 FROM jsonb_array_elements(data) as j(data) WHERE (data#>> '{msg}') LIKE '%est%');
    

    以下のコメントに記載されているようにテーブルをクエリするには:

    SELECT * FROM atable 
    WHERE EXISTS (SELECT 1 FROM jsonb_array_elements(columnx) as j(data) WHERE (data#>> '{msg}') LIKE '%est%');
    



    1. 1292列'updated_at'の日時値が正しくありません

    2. Oracleは空の文字列をNULLと見なしますが、SQL Serverはそうではありません-これはどのように最適に処理されますか?

    3. mysqlでデータソースを作成できません

    4. 異なるデータベース間で列を選択します