sql >> Databasteknik >  >> RDS >> Mysql

MYSQL Välj MAX-datum i ett sammanfogningsmeddelande

Något sånt här...

SELECT t1.received_id
     , t1.transaction_id
     , t1.date_modified
     , l.location
  FROM transactions t1
  JOIN ( SELECT received_id, MAX(date_modified) maxmodify FROM transactions GROUP BY received_id) max_record
    ON max_record.received_id = t1.received_id 
   AND max_record.maxmodify = t1.date_modified
  JOIN locations l
    ON l.location_id = t1.location_id
  JOIN received r
    ON r.received_id = t1.received_id
 WHERE t1.received_id = '1782'
 ORDER 
    BY t1.date_modified DESC

vars kärna är denna...

SELECT x.*
  FROM my_table x
  JOIN (SELECT id,MAX(thing) max_thing FROM my_table GROUP BY id) y 
    ON y.id = x.id 
   AND y.max_thing = x.thing;


  1. Sql Server int vs nvarchar jämförelse på prestanda?

  2. Hur man anropar en Oracle PL/SQL-objekt supermetod

  3. Få lista över databaser från SQL Server

  4. Introduktion till spärrar