Seite 1 von 1

Mit DAYOFYEAR keine Berechnung möglich

Verfasst: Mo, 26.01.2015 08:49
von bassman
Hallo,

ich habe folgende Abfrage:
SELECT "M_ID", MONTH( "Geburtsdatum" ) - MONTH( CURRENT_DATE ) AS "Diff_Monat", DAYOFYEAR( "Geburtsdatum" ) - DAYOFYEAR( CURRENT_DATE ) AS "Diff_DayOfYear" FROM "Mitglieder"
WHERE MONTH( "Geburtsdatum" ) - MONTH( CURRENT_DATE ) = 0 AND DAYOFYEAR( "Geburtsdatum" ) - DAYOFYEAR( CURRENT_DATE ) = 10

nach mehrmaligen Probieren habe ich herausgefunden, dass er die Differenz bei DAYOFYEAR nicht als Zahl erkennt und deshalb auch keine Datensätze zurückliefert. Das gleiche passiert übrigens auch bei DAY(Datum). Bei der Funktion MONTH funktioniert alles einwandfrei.

Welchen Denkfehler habe ich?
Gruß

Re: Mit DAYOFYEAR keine Berechnung möglich

Verfasst: Mo, 26.01.2015 08:55
von bassman
noch eine Ergänzung dazu:
Wenn ich in der graf. Benutzeroberfläche in "Feld" eingebe: Day("Geburtsdatum"), dann kann ich unter Bedingung nur einen Text als Kriterium einsetzen. Es werden automatisch dauernd Anführungszeichen ergänzt. z.B. wenn ich bei "Bedingung" <=15 eingebe, macht er '>=15' daraus und gibt logischerweise dann eine Fehlermeldung aus.

Was ist der Grund dafür?

Re: Mit DAYOFYEAR keine Berechnung möglich

Verfasst: Mo, 26.01.2015 15:46
von RobertG
Hallo bassmann,

kann ich beides so nicht nachvollziehen. DAYOFYEAR lässt bei mir (auch in der GUI) Berchnungen zu. Ich kann problemlos Zahel addieren. Ich kann auch problemloas den Jahrestag des momentanen Datums abziehen. Nur habe ich keinen Datensatz dabei, der genau am 5.2. eines Jahres liegt und damit der Bedingung entspräche, die Du aufgestellt hast.
Auch die Eingabe von >= ist problemlos möglich.

Mit was für einer Office-Version arbeitest Du?

Gruß

Robert

Re: Mit DAYOFYEAR keine Berechnung möglich

Verfasst: Mo, 26.01.2015 16:19
von bassman
Hallo,

ich schick mal die Datenbank mit der entsprechende Abfrage mit.

Gruß

Re: Mit DAYOFYEAR keine Berechnung möglich

Verfasst: Mo, 26.01.2015 18:47
von RobertG
Hallo bassmann,

den Fehler kann ich dann nachstellen, wenn ich, wie Du es gemacht hast, <=15 ohne eine Leertaste dazwischen schreibe. Da kann dann die GUI natürlich nicht unterscheiden, was bereits Ausdruck und was noch Zuweisung sein soll.

Gruß

Robert