Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Unterabfragen

Begonnen von MaxP, Oktober 23, 2023, 19:00:59

⏪ vorheriges - nächstes ⏩

MaxP

Hallo zusammen,

hört sich einfach an, trotzdem kriege ich es nicht hin.

In einer Abfrage habe ich folgende Felder mit Werten:

ID_Whg  ID_Geb  Größe   GesGröße
1             5             45         100
2             5             55         100
3             6             75         75


Das Feld GesGröße soll die Gesamtgröße aller Wohnungen pro Gebäude_ID berechnen.
Wie muss die Unterabfrage dann aussehen?
Oder funktioniert das mit Domsumme?

Gruß
Max

Win 10 pro 64 bit, Access 2003

MzKlMu

Hallo,
warum machst Du nicht einfach eine gruppierte Abfrage?
ID_Geb gruppieren, Größe summieren.
Gruß Klaus

PhilS

Zitat von: MaxP am Oktober 23, 2023, 19:00:59Das Feld GesGröße soll die Gesamtgröße aller Wohnungen pro Gebäude_ID berechnen.

Wie muss die Unterabfrage dann aussehen?
Oder funktioniert das mit Domsumme?
Wenn du als Ergebnis ganze Gebäude haben willst, ist der Ansatz eine gruppierte Abfrage zu erstellen, wie von @MzKlMu vorgeschlagen, die einfachste und sinnvollste Lösung.
Eine Unterabfrage oder DSum (kommt auf dasselbe heraus) ist nur nötig, wenn du einzelne Wohnungen als Ergebnis willst, aber trotzdem die Summe pro Gebäude.

SELECT
   ID_Whg,
   ID_Geb,
   Größe,
   (SELECT SUM(Größe)
      FROM deineTabelle t2
      WHERE t2.ID_Geb = t1.ID_Geb
   ) AS  GesGröße
FROM deineTabelle t1;
Die Lösung mit DSum funktioniert analog. Die könntest du als Übung selbst umsetzen.
Der wesentliche Unterschied ist, dass die Unterabfrage, insbesondere für kleiner Ergebnismengen, etwas schneller sein dürfte und weniger flackert wenn sie auf dem Bildschirm dargestellt wird.
Dafür sind Abfragen mit Unterabfrage in Access generell schreibgeschützt, während eine Abfrage mit einer Domänenaggregatfunktion das nicht ist.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

MaxP

Hallo,

okay, meine Abfrage war deutlich umfangreicher als das Beispiel.
Ich habe meine Abfrage nun entsprechend ausgedünnt und nun funktioniert
das auch mit der Gruppierung.

@PhilS
So ähnlich hatte ich das auch mit Dsum versucht. Für das nächste Mal
weiß ich dann Bescheid.

Danke Euch beiden!

Gruß
Max
Win 10 pro 64 bit, Access 2003