CosmosDB: JSON Expression

Sapevate che da una select effettuata in CosmosDB e’ possibile ottenere una vera e propria espressione in formato JSON?

Modello Dati

Immaginiamo di avere un container su cosmos dove salviamo i dati anagrafici dei nostri customer come il seguente.

1
2
3
4
5
6
7
{
    "firstName": "Andrea",
    "lastName": "Carratta",
    "emailAddress": "bla -at- bla -dot- bla",
    "cellPhone": null,
    "id": "VGUofz0g30OHJg3UMSROZw=="
}

E se volessimo raggruppare i dati per ambito tramite una select?

JSON Expression

Per ottenere un JSON in output dalla select il gioco e’ veramente semplice.

Come primo punto dimentichiamo la classica SELECT

1
SELECT * FROM C

e cominciamo a pensarne una molto piu’ seria come la seguente:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
SELECT 
    {
        "CustomerName":c.firstName , 
        "CustomerLastName":c.lastName,

        "Contacts": 
        {
            "Mail": c.emailAddress,
            "Phone": c.cellPhone
        }
    } Customer
 FROM c

Spaventosa? No, basta prenderci l’occhio e vedrete le soddisfazioni non mancheranno!

Output

Vi state chiedendo quale sara’ il risultato della query appena scritta?

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
[
    {
        "Customer": {
            "CustomerName": "Andrea",
            "CustomerLastName": "Carratta",
            "Contacts": {
                "Mail": "bla -at- bla -dot- bla",
                "Phone": null
            }
        }
    }
]

A questo punto potrete usare i dati come meglio credete e non dite che non vi ho avvisato di questo tips veramente utile ed interessante!