1

私は2つのSQLテーブルを持っています:

collections(id, user_id, name)
files(id, collection_id, name, start_date)

そして、1 つの要求で、コレクションごとに 3 つのファイル (最大) の「プレビュー」を使用して、特定のユーザーのすべてのコレクションを取得したいと考えています。

私の最初の(そして唯一の)考えは次のようなものでした:

SELECT f.*
    FROM collections c 
    LEFT JOIN files f
    ON f.collection_id = c.id
    WHERE c.user_id = 1 AND f.id IN
        (
            SELECT id
                FROM files
                WHERE collection_id = c.id
                ORDER BY start_date DESC
                LIMIT 3
        )
    ORDER BY c.name, f.start_date DESC

しかし、MySQL では動作せず、次のようになります。

#1235 - This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'

アイデアはありますか?=/

ありがとう。

4

2 に答える 2