您需要对SELECT中的所有非聚合列进行分组(并且明确地,不按作者ID分组,因为author是GROUP_CONCAT的一部分):
SELECT p.`id`, p.`title`, GROUP_CONCAT(a.`fullname` separator ', ')
from `publications` p
LEFT JOIN `authors` a on a.`publication_id` = p.`id`
GROUP BY p.`id`, p.`title`;
MySQL:将联接后的多个值合并到一个结果列中
您需要对SELECT中的所有非聚合列进行分组(并且明确地,不按作者ID分组,因为author是GROUP_CONCAT的一部分):
SELECT p.`id`, p.`title`, GROUP_CONCAT(a.`fullname` separator ', ')
from `publications` p
LEFT JOIN `authors` a on a.`publication_id` = p.`id`
GROUP BY p.`id`, p.`title`;