SQL Abfrage nach Datum sortieren

jcordes

Grünschnabel
[MS SQL]SQL Abfrage nach Datum sortieren

Hallo,

ich möchte aus einer Datenbank Daten in folgendem Format auslesen:

14.12.2006 11:30:00

Nun soll die SQL Abfrage die Daten so sortieren das die nächsten 3 Termine ausgewählt werden. Also nur die Termine die noch in der Zukunft liegen und als nächstes kommen.

Ich habe von SQL leider nicht die große Ahnung, daher haben mir auch die anderen Threads über Daten sortieren nicht so richtig den Durchblick verschafft.

Bin über jede Hilfe dankbar :)


Mit freundlichen Grüßen

jcordes

EDIT: Ich benutze MSSQL Express 2005 falls das von Bedeutung ist.
 
Zuletzt bearbeitet:
also in oracle kannst du volgendes machen:

select blabla from blablu
where deinFeld>sysdate

also sollte meiner Meinung nach gehen, kannste ja ma testen, ich bin auch noch ziemlich neu im SQL Gebiet also schlagt mich nicht wenn ich n **** erzähle ^^

Gruss Adi
 
Danke für die Antwort.

Du hast mich auf den richtigen Weg gebracht, ich hab gegoogelt bei MSSQL heißt es getDate(). Jetzt brauch ich nur noch Limit und Order by dann sollte es klappen.

Danke nochmal :)


Gruß

jcordes
 
Die Sache hat sich nun ein wenig geändert.

Der Termin soll nur noch an dem Tag angezeigt werden, andem der Termin stattfindet.

So soll zum Beispiel das Datum "14.12.2006 11:30:00" auch nur am 14.12.06 bis 11:30 ausgewählt werden. (Ich hoffe das ist verständlich, der Termin soll nur an dem Tag angezeigt werden an dem der Termin stattfindet und dann auch nur bis zur Uhrzeit)


Wie kann ich dies realiseren?


Gruß

jcordes
 
Ok also sollte das umgeschrieben ungefähr so aussehen:

Select dttime From tabelle Where dttime between getDate() and getDate()+1


Versteh ich aber leider nicht. Was rechnet der bei getDate()+1 denn hoch? 1 Tag?

Und dann würde er ja auch nicht nur bis zu der Uhrzeit des Termins auswählen sondern alle Termine an dem Tag, auch die, die schon vorbei sind. Oder liege ich irgendwie falsch?


Gruß

jcordes
 
Zuletzt bearbeitet:
also normalerweise sollte das getDate() auch die Uhrzeit liefern, die ersten 3 oder was du genau willst must du halt noch auslesen, .... und ja di 1 heisst zähle 1 tag dazu.....


Gruss Adi
 
Danke für die Antwort

Wie filter ich denn die Uhrzeit aus getDate() herraus? Am besten Stunden und Minuten damit er vergleichen kann.

Irgendwie so hab ich mir das gedacht (ich kenne nur nicht die Funktionen):

Select irgendwas From irgendwo Where Houraktuell<Hour AND Day=Dayaktuell

Houraktuell = Aktuelle Stunde
Hour = Stunde des Termins

Day=Tag des Termins
Dayaktuell=Aktueller Tag

Bzw. weiß ich auch nicht wie ich die Stunde bzw. den Tag des Termins herrausfiltern kann, da in dem Datensatz ja das gesamte Datum angegeben ist (z.B. 20.04.2006 12:32).

Ich weiß hört sich irgendwie durcheinander an aber ich hoffe ihr versteht was ich meine.

Gruß jcordes
 

Neue Beiträge

Zurück