Seite 1 von 1

[gelöst]Base und mySQL: Tage zu Datum addieren

Verfasst: Di, 27.09.2011 07:38
von Daxs
Hallo,
seit ein paar Tagen versuche ich die Lösung zu meinem Problem zu finden. Leider bisher vergeblich :( , aber ich denke dass mir einer von euch auf die Sprünge helfen kann :-D .
Ich arbeite mit OOo 3.3.0 und MySQL Serverversion 5.1.41. Beide habe ich über ODBC miteinander verbunden, was auch sehr gut klappt.

Jetzt möchte ich in einer Abfrage zu den Daten einer bestimmten Tabellenspalte eine bestimmte Anzahl Tagen addieren oder subtrahieren. Mit der Abfrage
SELECT `Anfragedatum` + 14 AS `Anzahlunggeplant` bzw. SELECT `Anreisedatum` - 40 AS `Restzahlunggeplant` funktioniert es nur, wenn es nicht über einen Monat hinausgeht. Beispiel:
09.09.11 +14 ergibt 23.09.11, aber 27.09.11 + 14 ergibt 43.09.11
26.01.12 -10 ergibt 16.01.12, aber 03.12.11 -10 ergibt 93.11.12

Mit den Funktionen ADDDATE und DATE_ADD habe ich auch schon versucht zu arbeiten. Sie ergeben aber immer einen Syntaxfehler und ich habe gelesen, dass sie bei der Kombination OOo Base/MySQL nicht unterstütz werden.

Hat jemand eine Idee, wie man dieses -eigentlich ja recht einfache Problem- lösen kann?
Besten Dank im Vorraus

Frank

Re: Base und mySQL: Tage zu Datum addieren

Verfasst: Di, 27.09.2011 09:04
von komma4
Daxs hat geschrieben:Ich arbeite mit OOo 3.3.0 und MySQL Serverversion 5.1.41. [...]
Jetzt möchte ich in einer Abfrage zu den Daten einer bestimmten Tabellenspalte eine bestimmte Anzahl Tagen addieren oder subtrahieren.

In BASE-Abfragen wird die DATE_ADD Funktion wirklich nicht unterstützt (hier: bei JDBC-Treiber),
in Extras>SQL... und in Basic-Anweisungen funktioniert es allerdings

Also bastelst Du Dir entweder eine Abfrage in eine temp-Tabelle...

Code: Alles auswählen

insert into `t333_temp` ( SELECT `t333_movie`.`name` , DATE_ADD( `ts_updated`, INTERVAL -30 DAY   )   FROM `t333_movie` `t333_movie` ORDER BY `t333_movie`.`name` )
(für Extras>SQL...)

...oder eine Basic-Routine


Getestet mit OOo 3.2.1/openSuse 11.3, MySQL 5.1.46, mysql-connector-java-5.1.15

Hilft Dir das weiter?

Re: Base und mySQL: Tage zu Datum addieren

Verfasst: Do, 29.09.2011 09:05
von Daxs
Vielen Dank für die schnelle Antwort. Bin leider in den letzten beiden Tagen nicht dazu gekommen hier nachzusehen. Ich werde versuchen es nach dieser Methode zu machen.

Gruß
Frank

Re: Base und mySQL: Tage zu Datum addieren

Verfasst: Do, 29.09.2011 10:22
von komma4
komma4 hat geschrieben:In BASE-Abfragen wird die DATE_ADD Funktion wirklich nicht unterstützt (hier: bei JDBC-Treiber)
Die Aussage muss ich -nach weiteren Tests- revidieren:

Aktiviert man im SQL-Editor die Option SQL-Kommando direkt ausführen
SQL-Kommando direkt ausführen
SQL-Kommando direkt ausführen
SQL-direkt ausführen.png (24.46 KiB) 2374 mal betrachtet
dann klappt es auch mit der Funktion

Re: [gelöst]Base und mySQL: Tage zu Datum addieren

Verfasst: Do, 29.09.2011 11:01
von Daxs
Hallo komma4,
der Hinweis
Aktiviert man im SQL-Editor die Option SQL-Kommando direkt ausführen
war genau der richtige Tipp. Vielen Dank für deine Mühe. Manchmal liegen die Lösungen so nahe, aber man sieht und findet sie einfach nicht.

Also nochmal Danke und bis bald.

Frank