PostgreSQL jsonb_path_query_firstでjson配列内で条件に一致した最初の値を取得するサンプル

環境
Windows 10 Home 64bit
PostgreSQL 13.2

構文
jsonb_path_query_first ( target jsonb, path jsonpath [, vars jsonb [, silent boolean ]] ) → jsonb
JSON値に対するJSONパスによって返される最初のJSON項目を返します。 結果がなければNULLが返ります。
オプションのvarsとsilent引数はjsonb_path_existsと同じように働きます。
jsonb_path_query_firstメソッドを使って、条件に一致条件に一致した最初の値を取得します。

使用例
SQL構文

SELECT jsonb_path_query_first('[11, 22, 33, 44, 55]', '$[*] ? (@ > 22 && @ < 55)') result

実行結果

postgres=# SELECT jsonb_path_query_first('[11, 22, 33, 44, 55]', '$[*] ? (@ > 22 && @ < 55)') result;
 result
--------
 33
(1 行)

 

PostgreSQL

Posted by arkgame