我有問題列出文章和它們各自的標籤,也許有人可以幫助我。加入1個MySQL行與幾個結果
想象查詢:
select *.articles, tags.tag_name
from articles
left join tags on tags.article_id = articles.article_id
where articles.article_id = 1
這將正常工作,如果文章只有一個標籤。問題是如果文章有超過1個標籤,那麼對於同一篇文章,每個標籤會得到1行。如果我想在這篇文章中展示這些文章,那麼它就會顯示給許多相同的文章。
有沒有辦法將它保存在一行中,還是需要使用兩個查詢:一個用於文章信息,另一個用於標籤?這將是不好的,因爲50個artciles列表需要50個查詢來顯示他們的標籤。
是的我有一張關係表。我嘗試了你的「內在」方式,但得到同樣的問題,2篇文章和2個標籤每個給我4行。 – 2011-03-14 17:46:11
對不起,我誤解了,看來GROUP_CONCAT是最好的方式,但我不明白你的行爲... – MatTheCat 2011-03-14 22:36:46