View Full Version : SQL Datum
hallo zusammen,
wie mache ich in SQL eine Datumsdifferenz, ich habe es so probiert
(Year(Current Date) * 10000 + Month(Current Date) * 100
+ (Day(Current Date) - 7)) as von,
(Year(Current Date) * 10000 + Month(Current Date) * 100
+ Day(Current Date)) as bis
da kommt aber heute bei von
20.060.594
ist auch klar weil es ein nummerischer wert ist aber wie kann ich das machen das immer 7 tage abgezogen werden?
danke im vorraus
steven_r
hallo habs gefunden
(Year(Current Date - 7 days) * 10000 +
Month(Current Date - 7 days) * 100
+ (Day(Current Date - 7 days))) as von,
(Year(Current Date) * 10000 + Month(Current Date) * 100
+ Day(Current Date)) as bis
so funktionierts
oder gehts besser?
wie kann ich das machen das immer 7 tage abgezogen werden?
Wie wäre es mit current date - 7 day?
ThiloSiemon
04-12-06, 09:40
Ich mache das immer so:
Datum in einen String umwandeln 'YYYY-MM-DD'
dann: days(date('YYYY-MM-DD') ==> gibt das Datum als Ganzzahl zurück, beginnend mit 708.205 = 01.01.1940 (Funktion date)
Days ==> 1 = '0001-01-01' {days(date('0001-01-01'))}
Vom 10.01.2006 7 Tage abziehen =
date(days(date('2006-01-10'))- 7) ==> 03.01.06
und, falls der 10.01 als Tag mitzählt =
date((days(date('2006-01-10'))- 7)+1) ==> 04.01.06
Hallo,
danke für die antworten
select current date - 7 days
funktioniert super
lg
steven_r
Hallo Steven,
nachdem Du nun schon des öfteren Fragen zum Thema Datums-Rechnung mit SQL gestellt hast, würde ich Dir empfehlen mal Kapitel 9 in dem folgenden Redbook zu lesen.
Modernizing IBM eServer iSeries Application Data Access - A Roadmap Cornerstone
(http://www.redbooks.ibm.com/abstracts/sg246393.html?Open)
Da steht alles drin, was beim Rechnen mit Datums- und Zeitwerten mit SQL und RPG möglich ist.
Birgitta
danke werd ich mir reinziehen
lg
steven_r