sql >> Database teknologi >  >> RDS >> MariaDB

MariaDB JSON_OBJECT() Forklaret

I MariaDB, JSON_OBJECT() er en indbygget funktion, der returnerer et JSON-objekt, der indeholder nøgle/værdi-parrene angivet som argumenter.

Syntaks

Syntaksen ser sådan ud:

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

Funktionen accepterer et vilkårligt antal nøgle/værdi-par.

Nøgle-/værdilisten kan også være tom.

Eksempel

Her er et simpelt eksempel til at demonstrere funktionen:

SELECT JSON_OBJECT("name", "Homer", "type", "Idiot");

Resultat:

+-----------------------------------------------+
| JSON_OBJECT("name", "Homer", "type", "Idiot") |
+-----------------------------------------------+
| {"name": "Homer", "type": "Idiot"}            |
+-----------------------------------------------+

Ingen argumenter

Som nævnt kan argumentlisten være tom, i hvilket tilfælde et tomt objekt returneres:

SELECT JSON_OBJECT();

Resultat:

+---------------+
| JSON_OBJECT() |
+---------------+
| {}            |
+---------------+

Forkert parameterantal

Men hvis du angiver argumenter, skal de være et lige antal argumenter (så at hver nøgle har en tilsvarende værdi).

Her er, hvad der sker, når jeg sender kun ét argument til JSON_OBJECT() :

SELECT JSON_OBJECT("name");

Resultat:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_OBJECT'

Samme fejl opstår, hvis jeg sender tre argumenter:

SELECT JSON_OBJECT("name", "Homer", "type");

Resultat:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_OBJECT'

Og så videre...

Nulnøglenavne

MariaDB-dokumentationen angiver, at der returneres en fejl, hvis et nøglenavn er NULL .

Jeg får dog et andet resultat:

SELECT JSON_OBJECT(null, null);

Resultat:

+-------------------------+
| JSON_OBJECT(null, null) |
+-------------------------+
| {"": null}              |
+-------------------------+


  1. Skift datoformatet for den aktuelle session i SQL Server

  2. Hvad betyder følgende Oracle-fejl:ugyldigt kolonneindeks

  3. SQL Server Database Snapshots -4

  4. Sådan tjekker du databasen på en ikke-rodfæstet Android-enhed