Re: SQL-Frage

Sebastian Weckend <[email protected]>
Newsgroups gmane.user-groups.linux.dresden
Message-ID <[email protected]>
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
> 
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.