Mysql
 sql >> Database >  >> RDS >> Mysql

Ottieni il numero massimo di righe per gruppo da una tabella correlata

Devi creare una sottoquery che ottenga il valore massimo di subStatusID per ogni prodID .

SELECT  a.*,     -- select only columns that you want to show
        c.*,     -- asterisks means all columns
        d.*
FROM    table1 a
        INNER JOIN
        (
            SELECT prodID, max(subStatusID) maxID
            FROM table2
            GROUP BY prodID
        ) b ON a.prodID = b.prodID 
        INNER JOIN  table2 c
            ON b.prodID = c.prodID AND
                b.maxID = c.subStatusID
        INNER JOIN table3 d
            ON c.subStatusID = d.subStatusID