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