Hallo Robert,
vielen Dank für Deine Unterstützung. Leider komme ich mit dieser Abfrage
trotzdem nicht über die Meldung "Fehler in der SQL-Syntax" hinaus....
Auch die "abgespeckten" Abfrage (hier mit meinen Feldnamen) läuft weder in OO
3.2.1, noch in dem eben mal installierten LibreOffice 3.3.0.
Bei aller Sucherei finde ich keinen Anhalt, was falsch sein könnte, wenn diese
Art der geschachtelten Abfragen überhaupt funktioniert....
SELECT "ID", "GebDatum",
CASEWHEN( DAYOFYEAR( "GebDatum" ) > DAYOFYEAR( NOW( ) ), DATEDIFF( 'yy',
"GebDatum", NOW( ) ) - 1, DATEDIFF( 'yy', "GebDatum", NOW( ) ) ) AS "Alter",
CASEWHEN((CASEWHEN( DAYOFYEAR( "GebDatum" ) > DAYOFYEAR( NOW( ) ), DATEDIFF(
'yy', "GebDatum", NOW( ) ) - 1, DATEDIFF( 'yy', "GebDatum", NOW( ) ) )<19),1)
AS "AltGruppe" FROM "Mitglieder"
Viele Grüße
Jürgen
Am 26.12.2010 20:18, schrieb Robert Großkopf:
Hallo Jürgen,
...
Kann das daran liegen, daß "Alter" in der gleichen Abfrage erstmals
definiert/berechnet wird?
Ist in der Tat so. Die folgende Abfrage funktioniert:
SELECT "ID", CASEWHEN( DAYOFYEAR( "GebDat" )> DAYOFYEAR( NOW( ) ),
DATEDIFF( 'yy',
"GebDat", NOW( ) ) - 1, DATEDIFF( 'yy', "GebDat", NOW( ) ) ) AS "Alter",
CASEWHEN((CASEWHEN( DAYOFYEAR( "GebDat" )> DAYOFYEAR( NOW( ) ),
DATEDIFF( 'yy',
"GebDat", NOW( ) ) - 1, DATEDIFF( 'yy', "GebDat", NOW( ) )
)<19),1,CASEWHEN((CASEWHEN( DAYOFYEAR( "GebDat" )> DAYOFYEAR( NOW( ) ),
DATEDIFF( 'yy',
"GebDat", NOW( ) ) - 1, DATEDIFF( 'yy', "GebDat", NOW( ) )
)<31),2,CASEWHEN((CASEWHEN( DAYOFYEAR( "GebDat" )> DAYOFYEAR( NOW( ) ),
DATEDIFF( 'yy',
"GebDat", NOW( ) ) - 1, DATEDIFF( 'yy', "GebDat", NOW( ) ) )<40),3,4)))
AS "Gruppe"
FROM "Datum" AS "Datum"
Gruß
Robert
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]