SQL-Abfrage "EndOfMonth" -> HSQL Update?
Verfasst: Di, 27.01.2015 14:55
Hallo zusammen,
nachdem ich nun stundenlang gesucht habe, habe ich mich nun doch entschlossen hier nach Hilfe zu fragen.
Mein ursprüngliches Problem:
Ich schreibe eine Abfrage, bei der ich den letzten Tag des Monats haben möchte. Ich bin beim Suchen über so einige Funktionen gestoßen:
DATEADD, EOMONTH, LAST_DATE...
Leider kommt bei allen immer die gleiche Fehlermeldung "Access is denied: EOMONTH in Statement...", bzw. "Access is denied: DATEADD in Statement..." o.ä.
Hier mal die Abfrage, die funktioniert, wenn ich das "LastDayOfMonth"-Feld weglasse.
Jetzt bin ich darüber gestoßen, dass man da wohl ein HSQLDB - Update machen muss, um auf diese Funktionen zugreifen zu können. Leider finde ich keine Anleitung, wie ich das machen kann. Mein LibreOffice ist ansonsten aktuell. Habt ihr Rat?
Vielen Dank schon mal im Voraus.
Gruß
Mathias
nachdem ich nun stundenlang gesucht habe, habe ich mich nun doch entschlossen hier nach Hilfe zu fragen.
Mein ursprüngliches Problem:
Ich schreibe eine Abfrage, bei der ich den letzten Tag des Monats haben möchte. Ich bin beim Suchen über so einige Funktionen gestoßen:
DATEADD, EOMONTH, LAST_DATE...
Leider kommt bei allen immer die gleiche Fehlermeldung "Access is denied: EOMONTH in Statement...", bzw. "Access is denied: DATEADD in Statement..." o.ä.
Hier mal die Abfrage, die funktioniert, wenn ich das "LastDayOfMonth"-Feld weglasse.
Code: Alles auswählen
SELECT
"ExpensesThisMonth",
"BalanceLastMonthCurrentAccount",
"ActualBalanceSavingsAccount",
"ActualBalanceCurrentAccount",
DAYOFMONTH( CURRENT_DATE ) AS "ActualDayOfMonth",
LAST_DAY( CURRENT_DATE ) AS "LastDayOfMonth"
FROM
( SELECT SUM( "Amount" ) AS "ExpensesThisMonth" FROM "FinanceLedgerEntry" WHERE ( "Account" = 0 ) AND ( "Type" = 0 ) AND ( MONTH( "PostingDate" ) = MONTH( CURRENT_DATE ) ) AND ( YEAR( "PostingDate" ) = YEAR( CURRENT_DATE ) ) ),
( SELECT SUM( "Amount" ) AS "BalanceLastMonthCurrentAccount" FROM "FinanceLedgerEntry" WHERE ( "Account" = 0 ) AND ( MONTH( "PostingDate" ) < MONTH( CURRENT_DATE ) ) OR ( YEAR( "PostingDate" ) < YEAR( CURRENT_DATE ) ) ),
( SELECT SUM( "Amount" ) AS "ActualBalanceSavingsAccount" FROM "FinanceLedgerEntry" WHERE ( "Account" = 1 ) ),
( SELECT SUM( "Amount" ) AS "ActualBalanceCurrentAccount" FROM "FinanceLedgerEntry" WHERE ( "Account" = 0 ) )
Vielen Dank schon mal im Voraus.
Gruß
Mathias