Трюк дня. Объединить значения из нескольких строк таблицы в одну, группируя по определённому параметру.



Например, есть таблица:



id name value

1 A 4

1 B 8

2 C 9



В результате нужно получить следующее:



id column

1 A:4, B:8

2 C:9



В SQL Server 2017, Azure можно использовать функцию STRING_AGG:



SELECT

id,

STRING_AGG(

CONCAT(name,’:’,[value], ‘, ‘)

FROM table

GROUP BY id



#tips