sql >> データベース >  >> RDS >> Mysql

JSON_OBJECT()–MySQLのキー/値ペアのリストからJSONオブジェクトを作成します

    MySQLでは、JSON_OBJECT()を使用できます キーと値のペアのリストからJSONオブジェクトを作成する関数。各キーと値のペアを2つの別々の引数として指定します。各ペアは、結果のJSONオブジェクトのキー/値ペアになります。

    偶数の引数を指定する必要があります(そうしないと、引数のリストのどこかに不完全なペアが含まれることになります)。

    この関数は空のリストも受け入れます(つまり、引数を指定しません)。この場合、空のオブジェクトが取得されます。

    構文

    構文は次のようになります:

    JSON_OBJECT([key, val[, key, val] ...])
    

    角かっこはオプションの引数を示します。したがって、引数を渡さずにこの関数を使用することは非常に有効です。

    例1-基本的な使用法

    実例を示します。

    SELECT JSON_OBJECT('City', 'Cairns', 'Population', 139693) AS 'Result';
    

    結果:

    +------------------------------------------+
    | Result                                   |
    +------------------------------------------+
    | {"City": "Cairns", "Population": 139693} |
    +------------------------------------------+
    

    例2–空の文字列

    空の文字列は有効です。

    SELECT JSON_OBJECT('City', '', 'Population', 139693) AS 'Result';
    

    結果:

    +------------------------------------+
    | Result                             |
    +------------------------------------+
    | {"City": "", "Population": 139693} |
    +------------------------------------+
    

    これはキーにも当てはまります:

    SELECT JSON_OBJECT('', 'Cairns', 'Population', 139693) AS 'Result';
    

    結果:

    +--------------------------------------+
    | Result                               |
    +--------------------------------------+
    | {"": "Cairns", "Population": 139693} |
    +--------------------------------------+
    

    例3–空のリスト

    空のリストも有効です。これにより、JSONオブジェクトが空になります。

    SELECT JSON_OBJECT() AS 'Result';
    

    結果:

    +--------+
    | Result |
    +--------+
    | {}     |
    +--------+
    

    例4–NULL値

    キーと値のペアの一部にNULL値を含めることができます。

    SELECT JSON_OBJECT('City', 'Cairns', 'Population', NULL) AS 'Result';
    

    結果:

    +----------------------------------------+
    | Result                                 |
    +----------------------------------------+
    | {"City": "Cairns", "Population": null} |
    +----------------------------------------+
    

    しかし、キー 一部にNULL値を含めることはできません。キーの値がNULLの場合、エラーが発生します。

    SELECT JSON_OBJECT('City', 'Cairns', NULL, 139693) AS 'Result';
    

    結果:

    ERROR 3158 (22032): JSON documents may not contain NULL member names.
    


    1. SQL Serverを使用して、空のスペースをnull値に変換するにはどうすればよいですか?

    2. SQLServerデータベースのデータを失うことなくCDC対応テーブルから列を追加または削除する方法-SQLServerチュートリアル

    3. SQLServerでSELECTからUPDATEを使用する方法

    4. JSON_QUOTE()–MySQLでJSON値として使用される文字列の文字をエスケープする方法