Zum Inhalt springen

Access auch NULL-Werte anzeigen


MichaelP

Empfohlene Beiträge

Hallo Leute,

also folgendes Problem. In einer Datenbank gibt es drei Tabellen. Diese Tabellen sind miteinander verknüpft.

1. Tabelle enthält Depotdaten

2. Tabelle enthält Aktienwerte (ca. 50)

3. Tabelle enhält Positionen über die die Menge der Aktien und die Depotdaten verknüpft sind.

Ich möchte eine Abfrage erstellen in der abgefragt wird, vie viele Depots jeder einzelne Datensatz enthält. Also alle 50 Aktien auflistet und dann ausgibt in wievielen Depots sie ist.

Das geht auch soweit. Bis auf einen kleinen Haken. Und zwar zeigt mir Access nur die Daten (9 Stück) an die >0 sind. Hat eine Aktie keine Verbindung zu einem Depot wird diese nicht angezeigt.

Nehme ich nur Tabelle 1 und Tabelle 2 in die Abfrage werde 450 Datensätze angezeigt.

Was kann ich machen, dass alle Datensätze angezeigt werden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Mit LEFT OUTER JOIN bringt er aber immer noch den gleichen Fehler.

Das ist die von Access erzeugte Abfrage:

SELECT Wertpapier.WPKNr, Wertpapier.Name, Count(Depot.Depotnr) AS AnzahlvonDepotnr

FROM Wertpapier INNER JOIN (Depot INNER JOIN [Position] ON Depot.Depotnr = Position.Depotnr) ON Wertpapier.WPKNr = Position.WPKnr

GROUP BY Wertpapier.WPKNr, Wertpapier.Name;

Wenn ich also beide INNER JOIN durch LEFT OUTER JOIN ersetze kommt die gleiche Fehlermeldung wie bei LEFT JOIN.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Bei meinem Access (2000) funktioniert es, wenn du Inner durch Left ersetzt:

SELECT Wertpapier.WPKNr, Wertpapier.Name, Count(Depot.Depotnr) AS AnzahlvonDepotnr

FROM Wertpapier LEFT JOIN (Depot LEFT JOIN Position ON Depot.Depotnr = Position.Depotnr) ON Wertpapier.WPKNr = Position.WPKnr

GROUP BY Wertpapier.WPKNr, Wertpapier.Name;

Weiter oben schreibst du, dass du in der Positionentabelle die Anzahl der Aktien abspeicherst! Möchtest du die Anzahl der Aktien, die ausgegeben sind, dann solltest du diese Spalte noch mit hinzufügen (statt count(Depot.Depotnr) dann halt sum(Postion."Anzahl-Feld"), das count fällt gänzlich weg!) Möchtest du allerdings nur die Anzahl der Depots, in denen die Aktien sind, dann solltest du mit dem obigen Statemant klarkommen!

Gruß

Lebertran

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...