2

2 人のテーブル ユーザーとアルバムがあります。ユーザーテーブルにはuser_id主キーがあります。他のテーブルアルバムにはuser_id、ユーザーが新しいアルバムをアップロードするたびにuser_id外部キーとしてアップロードするため、複数の行があります。user_id他のテーブル(アルバム)で他の結果セットを無視して、一度だけ選択したい。

どうすればこれを達成できますか?

4

3 に答える 3

1
SELECT album.* FROM album LEFT JOIN users ON user.id = album.id WHERE user.id = SOMEIDHERE

これでうまくいくと思いますが、作業するための情報があまり多くありません。

于 2013-01-15T14:27:48.550 に答える
1
SELECT  a.*, b.*
FROM    users a
        INNER JOIN album b
            ON a.user_ID = b.user_ID
        INNER JOIN
        (
            SELECT user_ID, MAX(photo_id) max_rec
            FROM album
            GROUP BY    user_ID
        ) c ON b.user_ID = c.user_ID AND
                b.photo_id = c.max_rec
于 2013-01-15T14:29:42.920 に答える
0
SELECT *
FROM (  SELECT u.*, a.*
        FROM users AS u
        INNER JOIN album AS a
        ON u.user_ID = a.user_ID
        ORDER BY a.created DESC) AS h
GROUP BY user_ID

ORDER BY b.created DESC->ORDER BYあなたが望むどんな行でも。この場合、最新のものが選択されます。

于 2013-01-15T14:31:54.470 に答える