Har en tabell liknande denna: Med risk för att jag har missförstått frågan borde det väl vara något i stil med: ok... jag var inne på en nästlad select själv... så jag var nog på samma spår... SELECT SN, MAX(time) FROM Table GROUP BY SN Hahaha... ja mitt förslag blir nog något märkligt om man ser det i efterhand... Testade din lösning från början Per... var bara osäker på om resultatet av den senaste mätningen verkligen returnerades... Fast är Pers lösning verkligen korrekt enligt standarden? <b>Fast är Pers lösning verkligen korrekt enligt standarden?</b>Urval, senaste mätdata
<info>
SN text
v1 double
v2 double
v3 double
v4 double
v5 double
time datetime
</info>
Tabellen lagrar mätvärden av en produkt med ett visst serienummer(SN)
En mätning kan ske flera gånger på samma serienummer... (samma serienummer, olika tidstämpel)
Jag vill nu ha ut den senaste mätningen på alla unika serienummer i ett urval... någon som har en idé om hur SQL-satsen bör se ut?
MySQL 4.1.12
Tabellen har inget unikt fält eller primärnyckel etc. (Skapad av mätprogramvaran, kommersiell produkt)
Behöver ni mer info, så fråga gärna... Sv: Urval, senaste mätdata
SELECT SN, time FROM Table GROUP BY SN
För att få ut alla senaste tider, sen får du väl byta ut Table mot urvalet om du vill.
Och sen:
SELECT SN, time, V1, V2, V3, V4 FROM
(SELECT SN, time FROM Table GROUP BY SN) AS T
INNER JOIN Table
ON Table.SN = T.SN AND Table.time = T.time
(och med reservation för något slarvfel)Sv:Urval, senaste mätdata
Ska testa den i morgon... Sv:Urval, senaste mätdata
menar du väl? Annars blir det sannolikt inte den senaste tiden...
Detta är nog också en lösning som fungerar i MySQL
SELECT *
FROM (
SELECT *
FROM Table
ORDER BY time DESC
) AS T
GROUP BY SN
Sv: Urval, senaste mätdata
Naturligtvis ska det vara en MAX.Sv: Urval, senaste mätdata
Tack för hjälpen Niklas för att du sparkade mig i rätt riktning, och tack Per för att du bekräftade min ursprungliga idé =)Sv:Urval, senaste mätdata
Jag förstår hur den funkar, men jag tycker den "känns" ganska skakig ("vad händer om något skulle byta plats", typ)?Sv: Urval, senaste mätdata
Tror inte det, och jag håller med om att den är "skakig". Men den har alltid funkat för mig i MySQL. Tror även att jag har sett MySQL skriva att den skall funka.
Men Niklas lösning är mer korrekt.