SQL-Server : query Spalten, um JSON-Objekt mit group by

Ich habe eine Tabelle mit 3 Spalten, ich möchte Abfrage, die die Tabelle, so dass das Ergebnis wird ein JSON-Objekt.

Beispieldaten sieht so aus:

 CREATE TABLE #Test (ValueV INT, KEYS NVARCHAR (100), ID INT) 

 INSERT INTO #Test 
 VALUES (1, N'ChangeAdress 19 - 21', 200),
        (1, N'ChangeAdress 20 - 22', 200),
        (1, N'ChangeAdress 22 - 24', 300),
        (1, N'ChangeAdress 23 - 25', 300),
        (2, N'ChangeAdress 24 - 26', 400),
        (2, N'ChangeAdress 25 - 27', 400),
        (3, N'ChangeAdress 26 - 28', 400),
        (3, N'ChangeAdress 27 - 29', 400)

 SELECT * FROM #Test

Meine Abfrage versucht:

 SELECT ID, Keys, ValueV
 FROM #Test  
 GROUP BY ID, keys, ValueV
 FOR JSON AUTO

Aber das gibt 1 zurück, JSON 'Zeile'. Was ich will, ist eine Zeile pro Gruppe. Gruppe wird hier ID, Wert-Kombination. Ich habe wenig Erfahrung mit JSON-Objekten (das wird wahrscheinlich sichtbar aus dieser Abfrage), so dass Hilfe wäre sehr geschätzt.

Den gewünschten Ausgang (aber dann als JSON pro Zeile):

 --------------------------------------------------
|200, 1, ChangeAdress 19 - 21, ChangeAdress 20 - 22|
|300, 1, ChangeAdress 22 - 24, ChangeAdress 23 - 25|
|400, 2, ChangeAdress 24 - 26, ChangeAdress 25 - 27|
|400, 3, ChangeAdress 26 - 28, ChangeAdress 27 - 29|

Vielen Dank im Voraus!

Ausgang nicht klar. Was du jetzt hast ist JSON nicht. Wollen Sie so etwas wie { "ID": 200, "ValueV": 1, "KEYS": ["ChangeAdress 19-21", "ChangeAdress 20-22"] }?
Wenn das regelmäßige JSON-format, dann ja. Mir fehlt die Vertrautheit, die hier mit JSON-Objekten, sorry.
Danke für Ihre gute Frage. Ich kam auch über diese Frage genau

InformationsquelleAutor SQL_M | 2018-03-30

Schreibe einen Kommentar