PostgreSQL json値の型を取得する
- 作成日 2022.12.03
- PostgreSQL
- PostgreSQL
PostgreSQLで、json値の型を取得する手順を記述してます。「json_typeof」を使用することで可能です。「josnb」型には「jsonb_typeof」で可能です。
環境
- OS CentOS Stream release 9
- PostgreSQL 15.1
- pgadmin4 6.16
json値の型を取得
json値の型を取得するには、「json_typeof」を使用します。
※「josnb」型には「jsonb_typeof」を使用します。
json_typeof(jsonデータ);
jsonb_typeof(jsonbデータ);
実際に、実行してみます。
SELECT
json_typeof('"aaa"'::json) AS "abc",
json_typeof('123.45'::json) AS "123.45",
json_typeof('true'::json) AS "true",
json_typeof('[1,2,3]'::json) AS "[1,2,3]",
json_typeof('{"id":1}'::json) AS "{""x"":1}",
json_typeof('null'::json) AS "null";
実行結果をみると型が取得されていることが確認できます。
型の違う「jsonb」に「json_object_keys」を使用するとエラーとなります。
SELECT
json_typeof('"aaa"'::jsonb) AS "abc";
ERROR: 関数json_typeof(jsonb)は存在しません
LINE 2: json_typeof('"aaa"'::jsonb) AS "abc";
^
HINT: 指定した名前と引数型に合致する関数がありません。明示的な型変換が必要かもしれません。
SQL 状態: 42883
文字: 10
実行結果
空を指定
引数を空にしても、エラーが発生します。
SELECT
json_typeof() AS "abc";
ERROR: 関数json_typeof()は存在しません
LINE 2: json_typeof() AS "abc";
^
HINT: 指定した名前と引数型に合致する関数がありません。明示的な型変換が必要かもしれません。
SQL 状態: 42883
文字: 10
実行結果
-
前の記事
draw.io テキストの編集を行うショートカットキー 2022.12.03
-
次の記事
javascript setの値を反転させる 2022.12.03
コメントを書く