我需要运行如下查询:
SELECT p.id, p.name,
(SELECT name
FROM sites s
WHERE s.id = p.site_id) AS site_list
FROM publications p
但是我希望子 Select 返回一个逗号分隔的列表,而不是一列数据.这可能吗?如果可能,怎么可能?
我需要运行如下查询:
SELECT p.id, p.name,
(SELECT name
FROM sites s
WHERE s.id = p.site_id) AS site_list
FROM publications p
但是我希望子 Select 返回一个逗号分隔的列表,而不是一列数据.这可能吗?如果可能,怎么可能?
您可以使用GROUP_CONCAT来执行该操作,例如
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;