sql >> Databasteknik >  >> RDS >> Mysql

JSON_OBJECT() – Skapa ett JSON-objekt från en lista med nyckel-/värdepar i MySQL

I MySQL kan du använda JSON_OBJECT() funktion för att skapa ett JSON-objekt från en lista med nyckel/värdepar. Du tillhandahåller varje nyckel/värdepar som två separata argument. Varje par blir ett nyckel/värdepar i det resulterande JSON-objektet.

Du måste ange ett jämnt antal argument (annars skulle du ha ett ofullständigt par någonstans i din lista med argument).

Funktionen accepterar också en tom lista (dvs du anger inga argument). I det här fallet får du ett tomt objekt.

Syntax

Syntaxen ser ut så här:

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

Hakparenteserna indikerar ett valfritt argument. Därför är det ganska giltigt att använda den här funktionen utan att skicka in några argument.

Exempel 1 – Grundläggande användning

Här är ett exempel att visa.

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

Resultat:

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

Exempel 2 – Tomma strängar

Tomma strängar är giltiga.

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

Resultat:

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

Detta gäller även nyckeln:

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

Resultat:

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

Exempel 3 – Tomma listor

Tomma listor är också giltiga. Detta kommer att resultera i ett tomt JSON-objekt.

SELECT JSON_OBJECT() AS 'Result';

Resultat:

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

Exempel 4 – NULL-värden

värdet en del av nyckel/värdeparet kan innehålla NULL-värden.

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

Resultat:

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

Men nyckeln delen kan inte innehålla NULL-värden. Om en nyckel har ett NULL-värde kommer ett fel att uppstå.

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

Resultat:

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


  1. SQL Server Databas Snapshots -4

  2. Felsökning av problem när du arbetar med datum och tid i SQL Server

  3. Databassäkerhet - Backup-kryptering under transport och i vila

  4. Hur sammanfogar du två tabeller på ett främmande nyckelfält med django ORM?