Entwickler-Ecke
Datenbanken - SQL / Access
stOrM! - Mo 19.06.06 13:21
Titel: SQL / Access
So langsam brech ich ins essen, hab kopfschmerzen vom sql :-(
Diesmal hab ich schwierigkeiten mit nem SQL Statement über 4 Tabellen...
Ersma die Tabellen:
Tabelle Kunde:
Kunden_ID (Autowert, indiziert)
Vorname
Nachname
Tabelle Konto
Konto_ID (Autowert, indiziert)
Kunden_ID (Referenz auf Kunde.Kunden_ID)
Spende (JA/Nein)
Betrag(Integer)
Finanzierung(JA/Nein)
Finanz_Betrag(Integer)
Angenommen_Von
Datum_Eingang
Tabelle RatenAuftrag:
RA_ID (interne eindeutige Nummer)
KD_ID (Referenz zum Konten.Kunden_ID)
AUFRAGSBEZEICHNUNG (damit man weiß worum es geht)
Gesamtbetrag
Konditionen
Laufzeit
erledigt ...
Tabelle RatenVerlauf
RV_ID (interne eindeutige Nummer)
RA_ID (Referenz zu Ratenauftrag.RA_ID)
Rate (wieviel)
Zahlungseingang (Datum) ...
Nun wollte ich eigentlich mittels SELECT erreichen, das mir alle Datensätze angezeigt werden, erstmal ohne Unterscheidung ob nun eine Finanzierung vorliegt oder nicht...
Jetzt wirds komisch (Wahrscheinlich durch meine nicht Kenntnis von SQL)
Mir werden alle Datensätze angezeigt bis auf den der keine Finanzierung ist, der ist verschwunden...
Das Problem ist leider ich weiss nicht wie ich um himmelswillen richtig Filtern kann, ich blick nicht mehr durch :-(
Mals Query poschte:
AdQ1.SQL.Add('SELECT * FROM Kunde, Konto, Ratenauftrag, Ratenverlauf WHERE Kunde.kunden_id = Konto.kunden_id AND Ratenauftrag.Kunden_ID = Konto.Konto_ID AND Ratenverlauf.RA_ID = Ratenauftrag.RA_ID');
Dann hab ich noch versucht, nen SUM in die Select mit einzubauen welches mir folgendes ermitteln sollte:
Sum(Ratenauftrag.Gesamtbetrag - RatenverlaufRate) AS "TOTAL" usw...
Dabei bekam ich dann die schöne Meldung das Gesamtbetrag keinen Standartwert hat usw. usw... tritt bei unterschiedlichen Feldern auf also nicht nur bei Gesamtbetrag auch bei Total usw...
Ich blicks net mehr vielleicht brauche ganz dringend Hilfe, vielleicht kann jemand mit mir das ganze mal zerflücken das ich das endlich kapier...
DB = ACCESS!
vielen Dank!
jsfrigo - Di 20.06.06 15:11
Bei Access muss man meines wissens mit joins arbeiten
Eine Verknüpfung der Tabellen in der Where klausel klappt nicht alse
SQL-Anweisung
1: 2: 3: 4:
| SELECT * FROM ((( KUNDEN LEFT JOIN KONTO ON KONTO.KUNDEN_ID = KUNDE.KUNDEN_ID) LEFT JOIN RATENAUFTRAG ON RATENAUFTRAG.KUNDEN_ID = KONTO.KONTO_ID) LEFT JOIN RATENVERLAUF ON RATENVERLAUF.RA_ID = RATENAUFTRAG.RA_ID) |
Ob die offnenden Klammern vor oder nach dem From KOmmen weis ich nicht mehr so genau aber du brauchst auf jeden fall pro join eine klammer
Gruss
Jörg
Moderiert von
jasocul: SQL-Tags hinzugefügt
stOrM! - Di 20.06.06 15:55
jsfrigo hat folgendes geschrieben: |
Bei Access muss man meines wissens mit joins arbeiten
Eine Verknüpfung der Tabellen in der Where klausel klappt nicht alse
SQL-Anweisung 1: 2: 3: 4:
| SELECT * FROM ((( KUNDEN LEFT JOIN KONTO ON KONTO.KUNDEN_ID = KUNDE.KUNDEN_ID) LEFT JOIN RATENAUFTRAG ON RATENAUFTRAG.KUNDEN_ID = KONTO.KONTO_ID) LEFT JOIN RATENVERLAUF ON RATENVERLAUF.RA_ID = RATENAUFTRAG.RA_ID) |
Ob die offnenden Klammern vor oder nach dem From KOmmen weis ich nicht mehr so genau aber du brauchst auf jeden fall pro join eine klammer
Gruss
Jörg
Moderiert von jasocul: SQL-Tags hinzugefügt |
Danke ich probiers mal heut abend aus!
Grüsse
s!
stOrM! - Mi 21.06.06 13:57
Titel: re
Hi,jsfrigo
ich musste die SQL Anweisung etwas umformulieren, die klappt nun leider aber nicht wie erwartet...
Jetzt zeigt mir das Grid zwar das meiste an jedoch sind eine Spalten leer obwohl die Tabelle dort Einträge haben...
Beisp. im Feld Raten sind mehrere Raten vorhanden, angezeigt wird jedoch nur eine einzige alle anderen Ratenzahlungen bleiben leer, änhlich verhält es sich mit den EinzahlungsDatum, auch das wird nur für einen Eintrag angezeigt alles andere ist ebenfalls leer...
Ich weiss mir keinen Rat mehr.
Würde es Helfen wenn ich mal den Inhalt alle Tabellenfelder hier poste oder dir eventuell bei Interesse mal die komplette Access DB sende? 380 KB...
Viele Grüsse
s!
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!