sql >> Database teknologi >  >> RDS >> Sqlserver

ISJSON() Eksempler i SQL Server (T-SQL)

Når du bruger SQL Server, kan du bruge ISJSON() funktion til at teste, om et strengudtryk indeholder gyldig JSON.

Hvis udtrykket indeholder gyldig JSON, ISJSON() returnerer 1 , ellers returnerer den 0 .

Syntaks

Syntaksen ser sådan ud:

ISJSON ( expression )

Hvor expression er det strengudtryk, som du tester for gyldig JSON.

Eksempel 1 – Gyldig JSON

Her er et eksempel for at demonstrere, hvad der sker, når strengen indeholder gyldig JSON.

SELECT ISJSON('{"Name": "Bob"}') AS Result;

Resultat:

+----------+
| Result   |
|----------|
| 1        |
+----------+

Eksempel 2 – Ugyldig JSON

Her er et eksempel for at demonstrere, hvad der sker, når strengen ikke indeholder gyldig JSON.

SELECT ISJSON('Name: Bob') AS Result;

Resultat:

+----------+
| Result   |
|----------|
| 0        |
+----------+

Eksempel 3 – En betinget erklæring

Her er en grundlæggende betinget erklæring, der udsender et andet resultat, afhængigt af om strengen indeholder JSON eller ej.

DECLARE @data nvarchar(255);
SET @data = '{"Name": "Bob"}';
IF (ISJSON(@data) > 0)
    SELECT 'Valid JSON' AS 'Result';
ELSE
    SELECT 'Invalid JSON' AS 'Result';

Resultat:

+------------+
| Result     |
|------------|
| Valid JSON |
+------------+

Eksempel 4 – Et databaseeksempel

I denne databaseforespørgsel returneres resultaterne kun, hvor Collections.Contents kolonne indeholder gyldig JSON.

Denne særlige kolonne bruger en datatype nvarchar(4000) for at gemme JSON-dokumentet.

SELECT Contents
FROM Collections
WHERE ISJSON(Contents) > 0;

Resultat:

+------------+
| Contents   |
|------------|
| [
    {
        "ArtistName": "AC/DC",
        "Albums": [
            {
                "AlbumName": "Powerage"
            }
        ]
    },
    {
        "ArtistName": "Devin Townsend",
        "Albums": [
            {
                "AlbumName": "Ziltoid the Omniscient"
            },
            {
                "AlbumName": "Casualties of Cool"
            },
            {
                "AlbumName": "Epicloud"
            }
        ]
    },
    {
        "ArtistName": "Iron Maiden",
        "Albums": [
            {
                "AlbumName": "Powerslave"
            },
            {
                "AlbumName": "Somewhere in Time"
            },
            {
                "AlbumName": "Piece of Mind"
            },
            {
                "AlbumName": "Killers"
            },
            {
                "AlbumName": "No Prayer for the Dying"
            }
        ]
    }
]            |
+------------+


  1. Sådan listes alle brugere i PostgreSQL

  2. Hvordan sprogindstillinger kan påvirke dine FORMAT()-resultater i SQL Server (T-SQL-eksempler)

  3. MySQL backup og gendannelseskommandoer til databaseadministration

  4. pip install mysqlclient returnerer fatal fejl C1083:Kan ikke åbne fil:'mysql.h':Ingen sådan fil eller mappe