Veröffentlicht 18. November 200816 j Hallo habe folgendes sql-statement: Select @num2 = sum(netto),@num14 = sum(netto) from sysadm.stat0 AS S where so0_nrid = @so0_nrid and jahr = year(getdate())-1 and template is null and (periode >=1 and periode <= max(periode)) das mit der periode haut so nicht hin folgende fehlermeldung: Meldung 147, Ebene 15, Status 1, Zeile 1 An aggregate may not appear in the WHERE clause unless it is in a subquery contained in a HAVING clause or a select list, and the column being aggregated is an outer reference. bitte um hilfe! gruß alex
18. November 200816 j Schau dir mal Group by und Having an. Dein Statement macht so nämlich keinen Sinn. Alles ist <= die höchste Angabe im Feld Periode. Bezweifel das du das möchtest.
18. November 200816 j wollte max(periode) vom aktuellen jahr: Select sum(netto),sum(netto) from sysadm.stat0 AS S where so0_nrid = 20292180697446 and jahr = year(getdate())-1 and template is null and (periode >=1 and periode <= (select max(periode) from sysadm.stat0 where jahr = year(getdate()))) so funktionierts. gruß alex
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.