Intellipaat Back

Explore Courses Blog Tutorials Interview Questions
0 votes
2 views
in SQL by (20.3k points)

I need to run a query like:

SELECT p.id, p.name, 

       (SELECT name 

          FROM sites s 

         WHERE s.id = p.site_id) AS site_list

  FROM publications p

But I'd like the sub-select to return a comma-separated list, instead of a column of data. Is this even possible, and if so, how?

1 Answer

0 votes
by (40.7k points)

Try using GROUP_CONCAT to return the comma-separated list, instead of the column of data perform like this:

SELECT p.id, p.name, GROUP_CONCAT(s.name) AS site_list

FROM sites s

INNER JOIN publications p ON(s.id = p.site_id)

GROUP BY p.id, p.name;

Related questions

0 votes
2 answers
0 votes
1 answer
asked Apr 22, 2020 in SQL by Sudhir_1997 (55.6k points)
0 votes
1 answer

31k questions

32.8k answers

501 comments

693 users

Browse Categories

...