Hallo Andreas,

Von:     Andreas Säger <ville...@t-online.de>
> Am 25.01.2011 21:30, Buettner-Dresden wrote:
> > Hallo,
> >
> > ich versuche ganz verzweifelt, in Base zu einem Datum eine Anzahl von
> > Jahren zu addieren. Das sollte eigentlich mit der Funktion DATEADD
> > gehen. Ich habe das schon in vielen Varianten probiert:
> > dateadd(YEAR,3,"2011-01-12") oder dateadd(YY,3,"2011-01-12") und
> > einfache/doppelte/keine Anführungszeichen bei den drei Bestandteilen -
> > immer wieder Fehlermeldungen, die aber nicht wirklich die Ursache
> > nennen. Was mache ich falsch bzw. wie geht es richtig?
>
> 
> Base hat immer noch keine Funktion DATEADD. Falls die Datenbank, mit der 
> Dein Base-Dokument verbunden ist diese Funktion bereitstellt, kannst Du 
> sie im direkten SQL-Modus verwenden. Der eigentliche Datenbanktyp steht 
> in der Statuszeile des Datenbankfensters.
> Die integrierte HSQLDB hat in der neuesten Version 2 DATEADD. Diese 
> Datenbankversion ist aber erst in OOo 3.4 integriert.
> Der Umstieg auf eine "richtige" Datenbank lohnt in jedem Fall. Bis dahin 
> kannst Du mal folgendes probieren:
> SELECT *, CAST(EXTRACT(YEAR FROM "Datum")+3 || '-' || EXTRACT(MONTH FROM 
> "Datum") || '-' ||EXTRACT(DAY FROM "Datum") AS "DATE") AS "3 Jahre 
> voraus" FROM "Tabelle"
> Das verkettet 3 Zahlen zu einem ISO-Datum '2010-12-31' und CAST 
> konvertiert diesen zu einem Datumswert. Im Fehlerfall muss auch diese 
> Abfrage im direkten Modus gestartet werden.
> 
Danke für die Antwort, ich werde es probieren. Ich hatte mich an der HSQL-
Dokumentation bei hsql.org orientiert. Wenn das mit der internen DB nicht geht,
kann man lange probieren. Gibt es eigentlich irgendwo eine Übersicht zu den
verfügbaren Befehlen?

Ahoi

Thomas

Ahoi

Thomas Büttner

Win XP Home OOo 2.3

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org
For additional commands, e-mail: users-h...@de.openoffice.org

Antwort per Email an