sql >> Databasteknik >  >> RDS >> Sqlserver

Skapa kapslade JSON-arrayer med FOR JSON PATH

Du kan använda följande fråga:

SELECT pr.person_id AS [person.id], pr.person_name AS [person.name],
    (
        SELECT pt.pet_id AS id, pt.pet_name AS name 
        FROM @Pets pt WHERE pt.pet_owner=pr.person_id 
        FOR JSON PATH
    ) AS [person.pet]
FROM @Persons pr 
FOR JSON PATH, ROOT('pet owners')

För mer information, se https://blogs.msdn.microsoft.com/sqlserverstorageengine/2015/10/09/returning-child-rows-formatted-as-json-in-sql-server-queries/



  1. Hur man kommer åt Oracle DB i VirtualBox från värd (Windows)

  2. Att skicka en array av data som en indataparameter till en Oracle-procedur

  3. Tidiga registreringar öppnar för PGDay.IT 2011

  4. DATEDIFF() vs DATEDIFF_BIG() i SQL Server:Vad är skillnaden?