JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。它易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在网络或者程序之间轻松地传递这个字符串,并在需要的时候将它还原为各编程语言所支持的数据格式。

    在MySQL 5.7中,就已经支持JSON数据类型。在MySQL 8.x版本中,JSON类型提供了可以进行自动验证的JSON文档和优化的存储结构,使得在MySQL中存储和读取JSON类型的数据更加方便和高效。
    创建数据表,表中包含一个JSON类型的字段 js 。

    1. CREATE TABLE test_json(
    2. js json
    3. );

    向表中插入JSON数据。

    1. INSERT INTO test_json (js)
    2. VALUES ('{"name":"songhk", "age":18, "address":{"province":"beijing", "city":"beijing"}}');

    查询t19表中的数据。

    1. mysql> SELECT *
    2. -> FROM test_json;

    image-20211104192516324.png当需要检索JSON类型的字段中数据的某个具体值时,可以使用“->”和“->>”符号。

    1. mysql> SELECT js -> '$.name' AS NAME,js -> '$.age' AS age ,js -> '$.address.province' AS province, js -> '$.address.city' AS city
    2. -> FROM test_json;
    3. +----------+------+-----------+-----------+
    4. | NAME | age | province | city |
    5. +----------+------+-----------+-----------+
    6. | "songhk" | 18 | "beijing" | "beijing" |
    7. +----------+------+-----------+-----------+
    8. 1 row in set (0.00 sec)

    通过“->”和“->>”符号,从JSON字段中正确查询出了指定的JSON数据的值。