Как стать автором
Обновить

Комментарии 9

Круть, а как с этим делом в постгре?
ужас… порой удивляюсь, насколько простые вещи делаются в mssql через задницу. Хотя иногда верно то же самое и по отношению к mysql.
если записей в таблице очень много, будет жутко медленно.
Если записей в таблице очень много, то нужно ставить ребром вопрос целесообразности конкатенации фиговой кучи строк.
А причем тут в названии SQL Server? Так и напишите MSSQL, так как проблема относится к реализации языка SQL от Microsoft, а вовсе не некоему мифическому продукту SQL Server (Тем более он называется Microsoft SQL Server, а не просто SQL Server — это огромная разница)
SQL Server — это зарегистрированная торговая марка Microsoft, так что разница практически нулевая.
Насчет CLR Aggregate — не соглашусь.

Взял выборку ~5500 строк (база персонала попалась под руку, группировка по году рождения для примерно равномерного распределения, аггрегация по фамилиям).

Результаты примерно такие:
SQL-ная хранимка: 00:00:00.1230000 (от 0.114 до 0.132)
XML-ное «собирание»: 00:00:00.1450000 (от 0.135 до 0.155)
CLR-ный аггрегат: 00:00:00.0670000 (от 0.050 до 0.085)

Числа, конечно, варьируются, но в среднем где-то так. При первом запуске CLR-ка, естественно, работала немного дольше (примерно как вариант с SQL-ной хранимкой) — начальная загрузка сборки в память требует времени.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.