[MS SQL] Datepart -1?

jcordes

Grünschnabel
Hallo,

ich benutze in meiner Abfrage Datepart(hour, datum) und benutze das in etwas so:

Select * From tabelle Where Datepart(hour,datum) >= Datepart(hour,getDate())

Die funktioniert auch, nun möchte ich aber von Datepart(hour,datum) eine Stunde abziehen. Leider weiß ich nicht wie ich dies anstellen kann.

Probiert hab ich es so:

Datepart(hour-1,datum)

und

Datepart(hour,datum)-1

Aber bei beidem gibt es keine Veränderung. Wie kann ich von der Stunde noch 1 Stunde abziehen?


Gruß

jcordes

EDIT:

Noch eine kleine Frage am Rande. Wenn er bei meiner Abfrage keinen Datensatz findet zeigt er mir diese Meldung an:

ADODB.Recordset Fehler "800a0bcd'

Entweder BOF oder EOF ist True, oder der aktuelle Datensatz wurde gelöscht. Der angeforderte Vorgang benötigt einen aktuellen Datensatz.

/asp/index.asp, line 27

Kann ich die irgendwie ausstellen?
 
Zuletzt bearbeitet:
Hallo,

schau dir mal DATEADD an.
Damit kannst du ein Datum verändern.
Code:
Select * From tabelle Where Datepart(hour,datum) >= Datepart(hour,DATEADD(hh,-1,GETDATE()))
 
Hi,

zu deinem zweiten Problem:
Prüfst du auch, ob in deinem RecordSet Daten enthalten sind? Wenn nein, solltest du das vor dem Zugriff auf das RecordSet einbauen. Die kannst du mit dem Property EOF(Boolean) machen. (siehe auch hier)
 
Zurück