K
K
Kafaki2020-05-16 12:00:34
SQL Server
Kafaki, 2020-05-16 12:00:34

How to make a Count query with data output?

Good afternoon.
There are three tables Compositions, Tracklist Composition, Tracklist.
5ebfa8791b044634174395.png
Each composition can consist of several tracklists, and so, I wrote a request for compositions. how many times each composition is included in the tracklists.

SELECT Композиции.Наименование, Композиции.Исполнитель,
Count(Композиции.Код_Композиции) AS [Состоит в треклистах] 
FROM Треклист INNER JOIN (Композиции INNER JOIN [Состав треклиста]
ON Композиции.Код_Композиции = [Состав треклиста].Код_Композиции)
ON Треклист.Код_Треклиста = [Состав треклиста].Код_Треклиста
GROUP BY Композиции.Наименование, Композиции.Исполнитель;

Got the result
5ebfa9cabd4fb832630189.png
How can I add a new column to the current query, where the names of the tracklists will be listed, separated by commas?

Answer the question

In order to leave comments, you need to log in

1 answer(s)
K
Konstantin Tsvetkov, 2020-05-16
@tsklab

I will not check, because instead of pictures there should be (according to the rules) texts. And test data.

SELECT Композиции.Наименование, Композиции.Исполнитель,
Count(Композиции.Код_Композиции) AS [Состоит в треклистах],
STRING_AGG( Треклист.Название, ', ')
  FROM Треклист 
  INNER JOIN (Композиции INNER JOIN [Состав треклиста] 
    ON Композиции.Код_Композиции = [Состав треклиста].Код_Композиции)
    ON Треклист.Код_Треклиста = [Состав треклиста].Код_Треклиста
GROUP BY Композиции.Наименование, Композиции.Исполнитель;

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question