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

Vælg kun sidste værdi ved at bruge group by at mysql

Brug en simpel gruppe efter id_member, men vælg:

substring(max(concat(from_unixtime(timestamp),attendance)) from 20) as attendance

Dette knytter tilstedeværelse til tidsstemplet for hver række i en gruppe, for at kunne vælge det ønskede tidsstempel/deltagelse med max() og derefter udtrække blot tilstedeværelsen.

Hvad concat() returnerer er 19 tegn formateret tidsstempel (ÅÅÅÅ-mm-dd TT:MM:SS) med tilstedeværelse vedhæftet startende ved tegn 20; substring(... from 20) får netop fremmødet fra den (strengvis) maksimale for gruppen. Du kan fjerne gruppen ved og bare

select concat(from_unixtime(timestamp),attendance), timestamp, attendance

for at få en bedre idé om, hvordan den bruger max for at få det rigtige fremmøde.



  1. Hvordan udløber aktiveringslinket i PHP?

  2. Forstå resultaterne af Execute Explain Plan i Oracle SQL Developer

  3. Fjernelse af sporfiler med ADRCI

  4. mysql GROUP_CONCAT DISTINCT flere kolonner