2

私はテーブルを持っています:

contest_images {contestID, imageID}
image {ID, userID}
user {ID}

(それよりも多くの情報が含まれていますが、必要なのはこれだけです)

これまでの私のクエリ:

SELECT imageID, userID FROM contest_images
JOIN image ON contest_images.imageID = image.ID 
JOIN user ON user.ID = image.userID
ORDER BY contest_images.imageID  DESC

コンテスト イメージには、1 人のユーザーからの複数の画像を含めることができます (これは意図的なものです)。

すべてのユーザーが追加した x 個の最新のものを取得したいと考えています。(そのため、ユーザーが一度にコンテストに参加できる画像は 1 つだけに制限できます)

また、{contestID, imageID, userID} を表示するビューを作成しようとしました。

前もって感謝します

4

3 に答える 3

3

このようにしてみて、

SELECT MAX(imageID), userID FROM contest_images
JOIN image ON contest_images.imageID = image.ID 
JOIN user ON user.ID = image.userID
GROUP BY image.userID
于 2013-10-18T08:17:06.420 に答える
1

どうもありがとうございました!:)

一緒に行きました

SELECT contestID, MAX(imageID), userID FROM contest_images
JOIN image ON contest_images.imageID = image.ID 
JOIN user ON user.ID = image.userID
GROUP BY image.userID

したがって、コンテストIDは最後にWHERE句で指定されます:)

しかし、あなたの両方に感謝します :P (私は本当にこれに行き詰まっていました.. :( )

于 2013-10-18T08:31:13.210 に答える