我确信有人问过这个问题,但我找不到正确的搜索词。
给定一个像这样的模式:
| CarMakeID | CarMake
------------------------
| 1 | SuperCars
| 2 | MehCars
| CarMakeID | CarModelID | CarModel
-----------------------------------------
| 1 | 1 | Zoom
| 2 | 1 | Wow
| 3 | 1 | Awesome
| 4 | 2 | Mediocrity
| 5 | 2 | YoureSettling
我想生成这样的数据集:
| CarMakeID | CarMake | CarModels
---------------------------------------------
| 1 | SuperCars | Zoom, Wow, Awesome
| 2 | MehCars | Mediocrity, YoureSettling
在以下样式查询中,我该如何替换 SQL Server 中字符串的“AGG”?
SELECT *,
(SELECT AGG(CarModel)
FROM CarModels model
WHERE model.CarMakeID = make.CarMakeID
GROUP BY make.CarMakeID) as CarMakes
FROM CarMakes make
http://www.simple-talk.com/sql/t-sql-programming/concatenating-row-values-in-transact-sql/ http://www.simple-talk.com/sql/t-sql-programming/concatenating-row-values-in-transact-sql/
这是 Transact SQL 中一个有趣的问题,对此有许多解决方案和相当多的争论。如何生成一个汇总结果,其中每个特定类别中每一行的区别列都列在“聚合”列中?简单、直观的数据显示方式极其难以实现。 Anith Sen 总结了不同的方法,并对您选择的方法提出了警告......
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)