sql >> データベース >  >> RDS >> Mysql

結合されたテーブルの結果を1行に制限する

    SELECT p.*, ph.*
    FROM products AS p
    INNER JOIN product_photos AS ph
        ON p.product_id = ph.product_id
    LEFT JOIN product_photos AS ph2
        ON p.product_id = ph2.product_id
        AND ph2.photo_order < ph.photo_order
    WHERE ph2.photo_order IS NULL
    ORDER BY p.product_title ASC
    

    product_photosテーブルに2回結合する方法に注意してください。 WHERE ph2.photo_order IS NULL 最も低い写真の順序を除くすべてを破棄します。ただし、product_id / photo_ordersコンボの重複からは保護されませんが、GROUP BYを追加することはできます。 その場合はp.idで。



    1. 複数のAND条件MySQL

    2. OracleDatabaseのPL/SQLストアドプロシージャとは

    3. アンドロイドでのsqliteデータベースの更新と圧縮

    4. SQL Server(T-SQL)でのCHAR()関数のしくみ