次のクエリを作成しました。
SELECT random.aid, random.rand_pid, r3.filepath, r3.filename, r3.pid
FROM
(SELECT r.aid,
(SELECT r2.pid
FROM cpg_pictures r2
WHERE r2.aid = r.aid
ORDER BY RAND() LIMIT 1) AS 'rand_pid'
FROM cpg_pictures r
GROUP BY r.aid
ORDER BY r.aid DESC
LIMIT 10
) random
LEFT JOIN cpg_pictures AS r3 ON r3.pid = rand_pid
cpg_pictures は写真を含むテーブルで、aid はアルバム ID です。
このクエリは、各アルバム ID から 1 つのランダムな写真を取得します。
クエリを変更して、アルバム ID ごとに 3 つのランダムな写真を取得できるようにしたいと考えています。
また、この最終結果を、cpg_pictures.aid = cpg_albums.aid である cpg_albums テーブルと結合したいと思います。