![]() |
Datenbank: mdb • Zugriff über: ado
Zusammenfassen aber verschiedene Bedingungen
Hihio,
ich häng ein wenig fest. Ich benötige 3 mal eine Punktezusammenfassung allerdings zu etwas unterschiedlichen Bedingungen. Also etwa:
SQL-Code:
Nun kommen zwei weitere Abfragen, etwa so:
Select spie,sum(me*pu) AS zalles FROM t1 WHERE spie=spnummer AND fertig=False
SQL-Code:
und
Select spie,sum(me*pu) AS zalles FROM t1 WHERE spie=spnummer AND sonder=True AND fertig=False
SQL-Code:
Nun finden alle drei Abfragen hintereinander statt und funktionieren auch.
Select spie,sum(me*pu) AS zalles FROM t1 WHERE spie=spnummer AND verlor=True AND fertig=False
Kann man dies zusammenfassen zu einer, oder fehlt hier eine Normalisierung zum Beispiel? Grüße |
Re: Zusammenfassen aber verschiedene Bedingungen
SQL-Code:
Select
spie, sum(me*pu) AS zalles, SUM( IIF( Sonder = True, me*pu, 0)) as zsonder, SUM( IIF( Verlor = True, me*pu, 0)) as zverlor FROM t1 WHERE spie=spnummer AND fertig=False; |
Re: Zusammenfassen aber verschiedene Bedingungen
Danke mkinzler!
Ist das IIF korrekt? |
Re: Zusammenfassen aber verschiedene Bedingungen
Könnte auch nur If() heissen ( ist m.W. beim MSSQL so)
|
Re: Zusammenfassen aber verschiedene Bedingungen
Danke,
eine letzte Frage noch, was bedeutet das in
SQL-Code:
da ,0?
SUM( IIF( Sonder = True, me*pu, 0)) as zsonder
|
Re: Zusammenfassen aber verschiedene Bedingungen
Das IIF() liefert für jede Zeile, wenn die Bedingung wahr ist me*pe zurück sonst 0. Diese Werte werden dann für summiert.
|
Re: Zusammenfassen aber verschiedene Bedingungen
Ich hab es so probiert,
nun kommt eine Fehlermeldung "Undefinierte Funktion 'if' in Ausdruck". Woran kann das liegen? |
Re: Zusammenfassen aber verschiedene Bedingungen
In Access müsste es IIF() heissen. Sonst könnte man es auch mit CASE..WHEN versuchen
|
Re: Zusammenfassen aber verschiedene Bedingungen
Perfekt !
genauso funktioniert es. Was ist das nun genau? Ein subselect? Können die Aggregate auch unterschiedlich sein? |
Re: Zusammenfassen aber verschiedene Bedingungen
Zitat:
Können die Aggregate auch unterschiedlich sein? Ja |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz