sql >> Databasteknik >  >> RDS >> Mysql

Välja en delmängd av rader från en PHP-tabell

Du kan ha en underfråga som separat får det största beloppet för varje säljare och slå ihop den med tabellen igen för att få de extra kolumnerna.

SELECT  a.*
FROM    tableName a
        INNER JOIN
        (
            SELECT  seller, MAX(amount) amount
            FROM    tableName
            GROUP   BY seller
        ) b ON a.seller = b.seller AND
                a.amount = b.amount

eller

SELECT  a.*
FROM    tableName a
WHERE   a.amount =
        (
            SELECT  MAX(amount)
            FROM    tableName b
            WHERE   a.seller = b.seller
        )

båda frågorna kommer att OUTPUT

╔════╦════════╦═══════╦════════╗
║ ID ║ SELLER ║ PRICE ║ AMOUNT ║
╠════╬════════╬═══════╬════════╣
║  3 ║ tom    ║   400 ║    750 ║
║  4 ║ jerry  ║   700 ║    250 ║
╚════╩════════╩═══════╩════════╝



  1. PHP-databasdriven flernivåmeny

  2. MYSQL JOIN om fältet inte är null

  3. Stöd för MariaDB 10.4 i uppgraderad dbForge Studio för MySQL, v.8.1

  4. Konvertera sträng dd/MM/åååå datum till java.sql.date åååå-MM-dd