Hallo Erik,
schau dir mal die window functions [0], besonders LEAD [1] und LAG [2] an.
Wenn der Datentyp von created TIMESTAMP ist und du nur den Unterschied der beiden neuesten Zeilen in der DB möchtest, dann so was ähnliches wie (ungetestet):
SELECT TIMESTAMPDIFF(SECOND, created, LEAD(created) OVER (ORDER BY created DESC)) AS diff FROM table ORDER BY created DESC LIMIT 1;
Viele Grüße Sebastian
[0] https://mariadb.com/kb/en/window-functions/ [1] https://mariadb.com/kb/en/lead/ [2] https://mariadb.com/kb/en/lag/
Am 19.02.22 um 12:14 schrieb Erik Schanze:
Liebe Linux-User,
ich habe eine MariaDB auf Debian 11 laufen und möchte die Zeitdifferenz in Sekunden zwischen der letzten und der vorletzten Zeile in einer Tabelle haben, anhand des "created"-Wertes. Die Beispiele im Internet ufern irgendwie immer gleich derart aus, dass ich sie nicht mehr verstehe. Ich habe nur rudimentäres SQL-Wissen. :-)
Gibt es da kein einfache Abfrage, die ich nur nicht gefunden habe?
Ich freue mich auf eure Antworten.
VG,
Erik