我如何获得每篇文章和文章中所有作者的姓名(与另一篇文章不同)

用户表:
ID NAME FNAME
1 A AA
2 B BB
3 C CC
4天

文章
ID作者标题
1 1,3 ty
2 4盎司

结果
A.id A.title USER1_name USER2_name
1 ty A C
2 tz D无用户


它的工作感谢,有没有办法使一个用户列而不是像这样的两个:

ID标题名称
1 ty A,C
2年B,C,E


因为有时我们的情绪比7位作者还要好:/

最佳答案

假设每篇文章最多2位作者

select a.id, a.title, b.u1, b.u2
from articles a
join (
  select if(a.id=b.id,a.id,concat(a.id,',',b.id)) author, a.name u1, if(a.id=b.id,'no user',b.name) u2
  from users a
  join users b) b on a.author = b.author;


demo

10-06 14:07
查看更多