Sono sicuro che è stato chiesto ma non riesco a trovare i termini di ricerca corretti.aggregazione stringa raggruppata/LISTAGG per SQL Server
Dato uno schema come questo:
| CarMakeID | CarMake
------------------------
| 1 | SuperCars
| 2 | MehCars
| CarMakeID | CarModelID | CarModel
-----------------------------------------
| 1 | 1 | Zoom
| 2 | 1 | Wow
| 3 | 1 | Awesome
| 4 | 2 | Mediocrity
| 5 | 2 | YoureSettling
voglio produrre un set di dati come questo:
| CarMakeID | CarMake | CarModels
---------------------------------------------
| 1 | SuperCars | Zoom, Wow, Awesome
| 2 | MehCars | Mediocrity, YoureSettling
Cosa faccio al posto di 'AGG' per le stringhe in SQL Server nel seguendo la query di stile?
SELECT *,
(SELECT AGG(CarModel)
FROM CarModels model
WHERE model.CarMakeID = make.CarMakeID
GROUP BY make.CarMakeID) as CarMakes
FROM CarMakes make
Wow non banale. –
L'articolo richiede un aggiornamento: CLR era per SQL Server 2005. 2008 supporta più parametri in una funzione di aggregazione, quindi è possibile ricreare i parametri di GROUP_CONCAT di MySQL. –
@OMG Ponies: puoi spiegarci di più o link per favore? Non sei abbastanza sicuro di cosa intendi ... – gbn