sql >> Databáze >  >> RDS >> Mysql

Mysql vyberte poslední řádek pro každou skupinu

Za prvé, neměli byste uvádět název sloupce pomocí jednoduchých uvozovek, protože to není řetězcový doslov.
Zadruhé můžete provést dílčí dotaz, který samostatně získá nejnovější čas pro každé c_id a připojte ji zpět k původní tabulce, abyste získali další sloupce.

SELECT  a.*
FROM    message a
        INNER JOIN
        (
            SELECT  c_id, MAX(time) time
            FROM    message
            GROUP   BY c_id
        ) b ON a.c_id = b.c_id AND
                a.time = b.time

nebo

SELECT  a.*
FROM    message a
WHERE   a.time =
        (
            SELECT  MAX(time) time
            FROM    message b
            WHERE   a.c_id = b.c_id
        ) 


  1. Chyby T-SQL, úskalí a osvědčené postupy – funkce oken

  2. Kumulativní součet MySQL seskupený podle data

  3. Importujte data aplikace Excel do relačních tabulek v MySQL

  4. Přidejte spoustu dat s určitým časovým intervalem v Javě