Forum
Tipps
News
Menu-Icon

Funktion im SQL-Server mit Query-Analyzer

Hallo,

möchte folgendes Abfrage im Query-Analyzer schreiben, finde aber die Funktion für das Systemdatum nicht.

select ......
where belegdatum <= SYSTEMDATUM - 90

Soll alle Belege auflisten, die älter als 90 Tage vom heutigen Tag an sind.


Antworten zu Funktion im SQL-Server mit Query-Analyzer:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Hi |

Beim SQL-Server kenne ich mich leider nicht so aus, aber bei MySQL dürfte das die Funktion CURDATE() sein. Vielleicht hilft dir das schon weiter bei der Suche...

greez 8)
JoSsiF

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Hallo JoSsiF,

danke für deinen Tipp, war zwar nicht für den SQL-Server passend, aber hat mit auf die Spur gebracht.

Für SQL-Server: getdate()

Das sind die feinen, kleine Untschiede  ;)

Hmm, ich hab mich damit auch vor kurzem erst aus einander gesetzt und denke mal, dass du imm vorraus die ganzen belege oder was du da hast lesen musst und ermitteln musst, wie alt die sind, damit du dann nach dem beleg oder direkt nach dem Primärschlüssel suchst!

Meine Idee: (String Belegalter = die Abfrage, nach dem Datum, wann der Beleg ausgegeben wurde, Bsp.: 20.04.2004) und oben musst du noch java.util.GregorianCalendar importieren!

StringTokenizer Text = new StringTokenizer(Belegalter, ".");
[Damit kannst du den String in Teile aufteilen, die sich durch den Punkt von einander getrennt werden!]

GregorianCalendar cal = new GregorianCalendar();
Text.nextToken();
if ( Text.nextToken() < cal.MONTH ) {
Text = new StringTokenizer(Belegalter, ".");
int TempInt = 30 - Text.nextToken() + cal.DAY_OF_MONTH;
}
--> Dann hast du raus wie alt der Beleg ist! Musst halt noch einbringen, wegen Monaten mit 31 Tagen und nicht 30, zudem den Februar, der ja manchmal nur 28 Tage hat oder 29!

if ( TempInt > 90 ) {
--> Hier kommt die Anfrage nach dem Primärschlüssel rein, oder nach dem Namen, den du dir vorher immer mit erfragst!
}



So, ich denke mal, dass is nen bissel durcheinander, aber wenn du es dir an die 20 MAl duirchliest, wirst du es verstehen! LOL (Ich bin dafür bekannt, dass ich so kompliziert rede, dass mich keiner versteht!)

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
So, ich denke mal, dass is nen bissel durcheinander, aber wenn du es dir an die 20 MAl duirchliest, wirst du es verstehen! LOL (Ich bin dafür bekannt, dass ich so kompliziert rede, dass mich keiner versteht!)

Hallo,

ja, verwirrt mich sehr, dein Text  ;)

Die Where-Bedingung ist ca. 40 Zeichen lang und funktioniert:

where belegdatum <= dateadd(day, -90, getdate())

« Primzahlen: Was läßt sich verbessern?exe-bin »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Tag
Ein Tag ist ein englischer Begriff und bedeutet so viel wie Etikett, Mal, Marke, Auszeichner und Anhänger. Generell ist Tag eine Auszeichnung eines Datenbetandes mit...

nbsp
nbsp - oder besser als HTML-Code   - steht für "non-breaking space": zu deutsch: ein geschütztes Leerzeichen. Im Gegensatz zu einem normalen Leerzeichen so...

Hypertext
Hypertext ( zu Deutsch: Übertext) ein ein von dem Informatiker Theodore L. Nelson in den sechziger Jahren geprägter Begriff für Text, der dreidimensional g...