Hallo Leute,
ja das Newbie-sein hört nicht auf. Ich habe eine Tabelle in der viele Felder zu finden sind. Mir geht es um zweie dieser. Sie beinhalten Fahrzeugtypen eines PKW; nämlich des Erst- und Zweitwagens.
Was ich brauche ist eine Liste (Abfrage) in der die jeweiligen Fahrzeugtypen zu finden sind. Hätte ich nur eine Spalte, wüsste ich wie ich das hinbekommen:
Abfrage -> Gruppierung -> fertig.
Aber wie mache ich aus zwei Spalten eine?
lG
Chris
Hallo,
"Newbie-sein" wird sich auch nicht ändern, wenn die Normalisierungsregeln nicht beachtet und umgesetzt werden....
Quick und vor allem dirty:
Select FZTyp1 & "," & FZTyp2 as FZTypen from tbl_DeineTabelle Group by FZTyp1 & "," & FZTyp2
Wegen mir auch:
Select Distinct FZTyp1 & "," & FZTyp2 as FZTypen from tbl_DeineTabelle
Danke für Deine Antwort. Funktioniert!
Nun gut. Vielleicht fällt Dir ja eine bessere Lösung ein:
Ich habe eine Exceltabelle bekommen, die wir bisher als Datenbank nutzten. Dieses gute Stück, mindestens 10 Jahre lang von einer Dame geführt, die nun bald in Rente geht enthält diese beiden Spalten. Und in jeder dieser Spalten gibt es unzählige Schreibweisen, für ein und dasselbe. Limusine, Limousine, Limo, Limósine,...manche Felder sind leer und manche enthalten auch das Modell oder die Automarke.
Es handelt sich um fast 3000 Datensätze.
In anderen Feldern habe ich selbst Hand angelegt und eine Ordnung reingebracht, und normalisiert indem ich Extratabellen angelegt habe.
Ich habe für diese Felder keine andere Idee, als das mit der Zeit im Alltag aufzuarbeiten. Wenn die Datensätze eh aufgerufen werden sollen zum Beispiel, soll sich derjenige, der das tut damit auseinandersetzen und es hoffentlichst ändern, so dass die Liste im Kombifeld immer kürzer wird, bis eine Ordnung herrscht, die sich dann im Nachhinein ordnungsgemäß verwursten lässt.
Hast Du mit derartig vermurksten Dingern Erfahrung?
In diesem Fall kann eine Phonetische Suche (https://de.wikipedia.org/wiki/Phonetische_Suche) hilfreich sein. Für die deutsche Sprache gibt es z. Bsp. die Kölner Phonetik (https://de.wikipedia.org/wiki/K%C3%B6lner_Phonetik), welche auch nach VB(A) umgesetzt (http://www.vbarchiv.net/tipps/tipp_1754-koelner-phonetik.html) wurde. Du könntest dann nach dem Ergebnis sortieren bzw. filtern und wenn das Ergebnis stimmt, eine Aktualisierung für den Wert durchführen.
Hier ein paar Beispielaufrufe im VBA Direkt-Bereich:?Koelner_Phonetic("Limusine")
5686
?Koelner_Phonetic("Limousine")
5686
?Koelner_Phonetic("Limósine")
56?86 '==> hier könnte man noch ein Replace(Ergebnis, "?", "") anwenden
?Replace(Koelner_Phonetic("Limósine"), "?", "")
5686
?Koelner_Phonetic("Limo")
56 ' das wäre dann doch zuviel verlangt - erscheint aber in der Sortierung
ZitatEs handelt sich um fast 3000 Datensätze.
Man könnte den Handbetrieb um etwas Datenbanktechnik ergänzen.
1) Temporäre Zuordnungstabelle anlegen
SELECT DISTINCT
FeldX,
"" AS Ersetzung
INTO
Zuordnungstabelle
FROM
DeineTabelle2) Feld "Ersetzung" mit den Begriffen Deiner Wahl füllen, am einfachsten per Hand + Kopieren, aber auch Ähnlichkeitssuche kann man unterstützend einsetzen.
3) Ersetzungen zurückschreiben
UPDATE
DeineTabelle AS D
INNER JOIN Zuordnungstabelle AS Z
ON D.FeldX = Z.FeldX
SET
D.FeldX = Z.ErsetzungAus zwei Spalten eine machen und Normaliserung umsetzen hast Du ja schon geübt.
Hallo,
ZitatHast Du mit derartig vermurksten Dingern Erfahrung?
ja 8)
Du bist ja auf dem richtigen Weg, wenn Du Stammdaten- (Nachschlage-) Tabellen mit gesetzten Beziehungen schon einsetzt. D. H. hier ist eine Tabelle "tbl_FZTypen" nötig mit Primärschlüssel- ( "FzT_ID") und Benennungsfeld("FzT_Benennung") . Über das Benennungsfeld legst Du einen eindeutigen Index (--> ohne Duplikate).
Mit Hilfe einer Anfügeabfrage überträgst Du aus der Excel-Liste zuerst die erste Spalte, danach die zweite Spalte in die "tbl_FZTypen"-Tabelle. Durch den Index wird vermieden, dass gleiche Benennungen mehrfach in die Tabelle geschrieben werden.
Ändere jetzt das Autowert-Primärschlüsselfeld in ein nicht- eindeutig indiziertes Long-Feld. Erstelle eine Abfrage auf diese Tabelle und sortiere darin nach der Benennung. Öffne diese Abfrage; jetzt ist Handarbeit gefordert insofern, als dass alle gleichsinnigen Benennungen den "FzT_ID"-Wert erhalten, der die richtige Schreibweise darstellt.
In weiteren Schritten wird die geänderte FzTypen-Tabelle mit der aus Excel generierten Access-Tabelle ("tbl_Fahrzeuge") in einer Aktualisierungs-Abfrage über die Benennungsfelder verknüpft und der FzT_ID-Wert in das FK-Feld "FZ_FzT_ID".
Zuletzt können mit einer Löschabfrage alle nicht in tbl_Fahrzeuge verwendeten FzTypen aus der tbl_FzTypen gelöscht werden.
Mannmannmann! Herzlichen Dank an alle!
Wenn die Zeit nicht mehr so drückt, werde ich an dieser Stelle weiter machen. Bis dahin bin ich bei der nächsten Baustelle zugange.
lG
Chris