2

simpel blogg を作成していて、脳がフリーズしているか、何かが発生していると思います...これを正しく行う方法が本当にわかりません...
News という名前のテーブルが 1 つと、Picture が 1 つあります。ニュースには複数の画像を含めることができますが、1 つの画像に含めることができるニュースは 1 つだけです。

私が何かをするとき:

SELECT * FROM Picture as Pic INNER JOIN News as News ON Pic.NewsID = News.NewsID GROUP BY News.NewsID, News.Header, News.News, News.NewsDate,Pic.Picture

特定のニュースに属する写真を含むすべての行を 1 つの行に表示したい...
例: NewsID | ヘッダー |ニュース | 写真 | 写真 | 写真 | 写真 | 写真

returns 
NewsID|Header|News|PictureID|Picture
1|myHeader|myNews|1|something.jpg
1|myHeader|myNews|2|othersome.png
2|lolHead|lolNews|3|lol.png

など...助けてください、よろしく/ハリス

4

1 に答える 1

1

グループ連結機能を使う

この関数は、グループの非 NULL 値を連結した文字列結果を返します。NULL 以外の値がない場合は、NULL を返します。

SELECT *, GROUP_CONCAT(Pic.Picture) FROM Picture as Pic 
INNER JOIN News as News ON Pic.NewsID = News.NewsID
GROUP BY News.NewsID
于 2012-10-13T18:56:06.947 に答える