MySQL 5.7からはJSON型のカラムが使えるようになりました このJSON型にはMySQLのいわゆるNULL値とは別に値がないことを示すnullという値があって混乱したのでメモしておきます (この記事の内容はたまたま手元にあったMySQL 5.7.20で確かめました) 便宜上この記事ではNULLをMySQL全般で使われている値がないことを示す値、nullをJSON型で値がないことを表す値のことを指しておきます(実際にはNULLの方はケースインセンシティブで、nullの方は小文字のみです) 呼び方がないと困るのでnullの方をJSON型のnullと呼んでおきます 値の取得 JSON_EXTRACT()や`カラム名`->"JSONのパス"と書くとJSONの値を取得できます mysql> SELECT JSON_EXTRACT('{"foo": "123"}', '$.foo'); +--