Discussion:
SQL Interval befehl
(zu alt für eine Antwort)
Andreas Waning
2006-01-16 14:20:44 UTC
Permalink
Hallo NGs,



ich hätte gerne aus der Table LocationList alle Record die in den letzten 20
Sekunden verändert worden sind.

So ungefähr so:

select * from LocationList WHERE DATE > current_timestamp - interval 20
second

Leider liegt hier ein Syndaxfehler vor. Hatt jemand eine Idee wie der SQL
String aussehen muss ?

Danke
Elmar Boye
2006-01-16 15:21:06 UTC
Permalink
Hallo Andreas,
Post by Andreas Waning
ich hätte gerne aus der Table LocationList alle Record die in den
letzten 20 Sekunden verändert worden sind.
select * from LocationList WHERE DATE > current_timestamp - interval
20 second
Leider liegt hier ein Syndaxfehler vor. Hatt jemand eine Idee wie der
SQL String aussehen muss ?
Gegenfrage: Für welches DBMS?
ANSI 99 Date und Interval beherrschen nicht alle DBMS
(SQL Server und Access z. B. nicht).

Gruss
Elmar
Andreas Wilma
2006-01-18 10:23:42 UTC
Permalink
Hallo Elmar,
sorry, dass ich so spaet anworte, war aber gestern beim Kunden.

Das ganze soll fuer einen MS SQL 2005 sein.

Danke Andreas
Post by Elmar Boye
Hallo Andreas,
Post by Andreas Waning
ich hätte gerne aus der Table LocationList alle Record die in den
letzten 20 Sekunden verändert worden sind.
select * from LocationList WHERE DATE > current_timestamp - interval
20 second
Leider liegt hier ein Syndaxfehler vor. Hatt jemand eine Idee wie der
SQL String aussehen muss ?
Gegenfrage: Für welches DBMS?
ANSI 99 Date und Interval beherrschen nicht alle DBMS
(SQL Server und Access z. B. nicht).
Gruss
Elmar
Elmar Boye
2006-01-18 10:49:48 UTC
Permalink
Hallo Andreas,
Post by Andreas Wilma
Post by Andreas Waning
ich hätte gerne aus der Table LocationList alle Record die in den
letzten 20 Sekunden verändert worden sind.
select * from LocationList WHERE DATE > current_timestamp - interval
20 second
Das ganze soll fuer einen MS SQL 2005 sein.
Da gibts wie gesagt kein INTERVAL.

Unter der Voraussetzung DATE ist vom Typ DATETIME :
SELECT * FROM LocationList
WHERE [DATE] > DATEADD(ss, -20, CURRENT_TIMESTAMP)

Mehr siehe DATEADD und DATEDIFF in der Online Dokumentation.

Gruss
Elmar

Loading...