Neuigkeiten:

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

Mobiles Hauptmenü

Einfache (und doch schwierige) Frage -- Abfrage erhöht Datensatzzahl

Begonnen von sipebues, Dezember 07, 2015, 16:37:41

⏪ vorheriges - nächstes ⏩

sipebues

Hallo zusammen,

ich denke mal, ich bin kein absoluter Neuling in Access, aber scheinbar doch zu blöd, um eine Antwort auf meine Frage zu finden  :(
Ich habe eine Accesss (2013) accdb, in der sind sowohl über mysql, als auch in der DB selbst Tabellen eingebaut. Wenn ich die Tabellen direkt ansehe, kommen z.B. 16940 Zeilen in einer Tabelle raus (nennen wir sie mal Benutzertabelle). Wenn ich die Tabelle aber innerhalb einer Abfrage verwende und z.B. die Benutzertabelle über die Benutzer-ID mit einer "Benutzereigenschaften"-Tabelle (die z.B. Adresse, etc enthält) joine, und dann mir nur eine Spalte aus der Benutzertabelle ansehe, lande ich bei 21823 Zeilen. Und ich finde %%&&$§ nochmal nicht raus, warum bzw. wo die Einstellung ist, nicht alle Permutationen anzuzeigen, sondern tatsächlich nur die eingegebenen Verknüpfungseigenschaften "nur die Datensätze, bei denen die Inhalte gleich sind"....

kann mir jemand weiterhelfen?

Vielen Dank
Peter

ebs17

Zitat"nur die Datensätze, bei denen die Inhalte gleich sind"....

Wie joinst Du?
Bei einer normalen Verknüpfung von zwei Tabellen über einen Schlüssel auf Gleichheit mach eine Abfrage genau das.
Mit freundlichem Glück Auf!

Eberhard

MaggieMay

Hi,

wenn es eine 1:n-Beziehung ist, bekommst du u.U. natürlich auch mehr Datensätze als in der Benutzertabelle stehen. Wenn du das nicht willst und die Benutzer-Eigenschaften auch gar nicht sehen willst, hilft das Schlüsselwort "Distinctrow" hinter dem Select.
Freundliche Grüße
MaggieMay

sipebues

Hi ebs17, hi MaggieMay

Ich joine "inner";
deine Aussage "Bei einer normalen Verknüpfung von zwei Tabellen über einen Schlüssel auf Gleichheit mach eine Abfrage genau das" verstehe ich nicht: das ist doch genau mein Problem..?

die Beziehung ist 1:1; ich will eigentlich auch nicht für jede Miniabfrage ins SQL tippen, sondern die graphischen Abfragetools nutzen, daher ist der Tipp mit DISTINCTROW gut, aber die Frage ist nach der generellen Lösung :-)

ebs17

Zitatdie Beziehung ist 1:1

Dann kann es bei einem INNER JOIN keine Datensatz-"Vervielfältigung" geben, sondern bestenfalls eine Reduzierung.

Vielleicht solltest Du doch die vollständige SQL-Anweisung zeigen. Diese enthält nämlich die ganze Wahrheit.
Mit freundlichem Glück Auf!

Eberhard