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

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"')

実行結果