Access 2000: Eine Tabelle. Von einer Spalte möchte ich max-Werte rausfinden, wobei die ersten beiden Stellen von ingesamt 6 immer Zahl/Buchstabe, Buchstabe/Zahl, Buchstabe/Buchstabe, Zahl/Zahl sind und die anderen 4 mehrfach fortlaufende Nummern sind. Da das bestimmt keiner verstanden hat ein Beispiel
1A0001
1A0002
1A0003
1E0001
F00001
F00013
Ergebnis der Abfrage soll sein: 1A0003,1E0001,F0013
Ergebnis der Abfrage soll sein: 1A0003,1E0001,F0013
Hi,
hier hilft das Gruppieren.
Im Prinzip nichts anderes als Gruppieren nach einer Spalte, bloß mußt Du hier nach Teilen der Spalte gruppieren:
(Gegeben Tabelle t, Spalte t1):
SELECT LEFT$(t1, 2) AS tx, MAX(t1) AS ty
FROM t
GROUP BY LEFT$(t1, 2);
Nun willst Du aber nur eine Spalte haben, nicht die Pseudospalte. Das geht mit einem Subselect:
SELECT ty FROM(
SELECT LEFT$(t1, 2) AS tx, MAX(t1) AS ty
FROM t
GROUP BY LEFT$(t1, 2);
);
Wenn Du sowas machen mußt, stellt sich für mich die Frage nach dem Datenmodell. Deine Spalte beinhaltet offensichtlich nicht nur unabhängige Werte, so daß die Normalisierung nicht gegeben ist.