Hallo Robert,
Am 15.01.2010 21:10, schrieb Robert Großkopf:
Hallo Thomas,
eine scheinbar einfache Aufgabe hat mich heute genervt. Aus folgender
kleinen Tabelle in Base:
PLZ Region Filiale Kunden
11111 R1 F1 5
22222 R1 F2 6
33333 R1 F1 7
44444 R1 F1 4
55555 R1 F2 8
war zu ermitteln, welche Filiale bei welcher PLZ die meisten Kunden hat
Das ist nur in 2 Schritten lösbar, da so etwas wie "Max" nur zusammen mit
einer Gruppierung erreicht werden kann. Da es um die maximale Kundenzahl in
Abhängigkeit von der Filiale geht gehört die Filiale gruppiert und die
maximale Kundenzahl als Max(Kunden) dazu.
Aus dieser Abfrage machst Du eine Ansicht. Darauf kannst Du dann wie auf eine
neue Tabelle zugreifen. Jetzt wird die Ursprungstabelle und die neue
Ansichtstabelle über die Filialen und die Max(Kunden) miteinander verknüpft
und Du erhältst die Abfragemöglichkeit auf den Rest des Datensatzes.
Also
SELECT "Filiale", MAX( "Kunden" ) AS "maxKunden" FROM "Filiale" GROUP BY
"Filiale"
Daraus dann einen View machen und
SELECT "Filiale"."PLZ", "Filiale"."Filiale", "Filiale"."Kunden" FROM "Filiale"
, "Ansicht_MaxKunden" WHERE "Filiale"."Filiale" =
"Ansicht_MaxKunden"."Filiale" AND "Filiale"."Kunden" =
"Ansicht_MaxKunden"."maxKunden"
Danke für die schnelle Antwort, das geht so wunderbar. Allerdings frage
ich mich jetzt, warum ich (in der Firma) nicht selbst darauf gekommen
bin. Das lag wohl an der größeren Komplexität, wodurch der Überblick
nicht mehr so einfach war und außerdem war da ein gewisser Zeitdruck...
Ahoi
Thomas
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]