Datum + X Monate

Status
Nicht offen für weitere Antworten.

miketech

Bekanntes Mitglied
Hi zusammen,

ich habe ein Datum, in der Form von 13.08.2007, also:

DD.MM.YYYY

Das Datum habe ich in einer Datenbank gespeichert und möchte nun mit SQL das Datum + X Monate berechnen.

Meine Idee für den neuen Monat war nun:

(Month(date) + X) mod 12

Und für das Jahr:

(Year(date) + (Month(date) + X) / 12)

Das funktioniert soweit auch. Mein Problem ist beim Monat, dass er natürlich durch das mod 12 nur von 0 - 11 geht, statt von 1-12.

Hat jemand eine Idee, wie ich das nun hinbiegen kann? Ich bräuchte danach etwas der Form:

if month == 0 month = 12

Aber das ganze läuft in einer SQL Abfrage, da geht das nicht.

Gruß

Mike
 
S

SlaterB

Gast
((neuerMonat -1 ) mod 12 +1)

aber willst du wirklich einen ganzen Kalender in der DB nachbauen?
mit unterschiedlichen Tagen pro Monat und Schaltjahren? ;)
 

miketech

Bekanntes Mitglied
Hi,

ah so könnte es gehen, danke :)

Aber nun habe ich Probleme mit dem Jahr. Bsp:

10.2007 + 14 Monate

Neuer Monat = 23 Mod 12 + 1 = 12 (passt)
2007 + 24 / 12 (=2) = 2009

Hier müsste aber ja 2008 rauskommen.

Naja, neuer Kalender, ich muss einfach zu einem Feld in einer DB (als Datum gespeichert) eine bestimmte Anzahl Monate hinzufügen. Die Monate sind wieder in einer anderen Tabelle gespeichert. Man muss dazu sagen, dass das neue Datum nur die Form mm.yyyy haben muss. Die Tage spielen hier keine Rolle mehr. D.h. ich muss nicht den 29.02.xxxx plötzlich zum 28.02.zzzz umbauen, falls Du das meintest.

Gruß

Mike
 
S

SlaterB

Gast
da ich dir nun schon was von -1 und +1 erzählt habe,
ist da das -1 für die Jahresberechnung nicht offensichtlich? (nicht generell 1 Jahr abziehen, sondern einen Monat)
 

miketech

Bekanntes Mitglied
Hi,

grmpf. Das hatte ich eben auch überlegt und ich dachte ich hätte ein Beispiel gefunden, wo es nicht geht. Aber hab mich hier wohl vertan, sorry.

Gruß

Mike
 
P

pat2004

Gast
hi

du könntest einfach die klasse date und gregorian calender verwenden
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Problem mit Datum-Formatierung Softwareentwicklung 2

Ähnliche Java Themen


Oben