MySQL jsonオブジェクトまたはリストであるかを判定する

  • 作成日 2021.12.28
  • 更新日 2022.10.19
  • mysql
MySQL jsonオブジェクトまたはリストであるかを判定する

MySQLで、jsonオブジェクトまたはリストであるかを判定する手順を記述してます。

環境

  • OS ubuntu21.10
  • MySQL Ver 8.0.27-0ubuntu0.21.10.1 for Linux on x86_64 ((Ubuntu))
  • MySQL Workbench 8.0.27

手順

jsonオブジェクトまたはリストであるかを判定する場合は、「JSON_TYPE」を使用します。

JSON_TYPE(値)

実際に、判定してみます。

SELECT 
JSON_TYPE('["a", 1]'),
JSON_TYPE('["a", ["b",1]]'),
JSON_TYPE('{"key1": "value1"}'),
JSON_TYPE('{"key1": "value1","key2": {"key1": "value1"}}')

実行結果をみると、判定されていることが確認できます。

jsonオブジェクトやリストでないものは、以下の結果となります。

SELECT 
JSON_TYPE('"a"'),
JSON_TYPE('1'),
JSON_TYPE('"2021-11-11"')

実行結果