EvilNick Geschrieben 11. Juni 2003 Geschrieben 11. Juni 2003 Tja, mein Lieblingsthema, LEFT-RIGHT-INNER-OUTER etc. JOINs... damit bin ich noch nie wirklich klargekommen. Ich habe 3 Tabellen personal, bereiche, plan personal und bereiche sind über "berid" verknüpft personal und plan sind über "persid" verknüpft Ich brauche ALLE Daten aus personal (ergo jeden Mitarbeiter), dazu den Namen seines Bereiches (aus bereiche, Feld "bereich") UND (jetzt kommt der Haken) wo in plan monat = 6 und jahr = 2003 sind... Soll ne monatliche Auswertung werden, d.h. ich brauche bei dem SELECT immer nur die Daten eines bestimmten Monats, aber alle Mitarbeiter, auch wenn sie nicht gearbeitet haben (dann halt 0), und dazu den Namen des Bereichs, in dem sie arbeiten. Habe es so probiert: sql = "SELECT a.name, a.berid, COUNT(b.typ) FROM (tpersonal a LEFT JOIN tplan b ON " & _ " b.persid = a.persid) " & _ " WHERE ((b.monat = " & MonNum(cbMonat.Text) & ") AND " & _ " (b.jahr = " & CLng(txtJahr) & ")) GROUP BY a.name , a.berid, b.monat, b.jahr" Aber er gibt mir nur die aus, die auch in dem Monat gearbeitet haben... also vermute ich mal das es an meiner Einschränkung auf monat und jahr liegt... nur WIE ich das aufheben kann... ich komm nicht drauf. Dannke schonmal Edit: Nicht wundern, in dem Select hab ich die dritte Tabelle noch nicht eingebunden. Zitieren
ITSE Geschrieben 11. Juni 2003 Geschrieben 11. Juni 2003 ich denke du benötigst ein LEFT OUTTER JOIN... ich selbst habe aber die Erfahrung gemacht, dass solche Joins auf großen Tabellen sehr unperformant sind. (getestet auf SAPDB). Wenns nicht klappt dann probier doch auch mal RIGHT OUTTER JOIN, zumindest bei SAPDB haben die Entwickler da was verwechselt... Zitieren
EvilNick Geschrieben 11. Juni 2003 Autor Geschrieben 11. Juni 2003 Bringt leider alles nichts, ich habe es mit LEFT, LEFT OUTER, RIGHT, RIGHT OUTER probiert, es klappt nicht. Habe sogar einen ehemaligen Arbeitskollegen angeschrieben, der in dem SQL-Zeug noch fitter ist als ich, aber auch seine Lösung funktioniert mit Access nicht. Acccess ist halt einfach schrott, ich würde das lieber mit einer richtigen Datenbank machen, da hatte ich nie Probleme. Ich denke ich werde es es jetzt über einen kleinen Umweg lösen... aber falls noch jemand eine Idee hat, immer her damit, man lernt ja nie aus. Zitieren
ITSE Geschrieben 11. Juni 2003 Geschrieben 11. Juni 2003 wie wärs wenn du dir deine Abfrage mit Access im graphischen Klick und Zieh-Menü zusammenbaust und dir dann den SQL-Text anschaust? (Anzeige-SQL)... Der wird doch automatisch erzeugt.... Zitieren
EvilNick Geschrieben 11. Juni 2003 Autor Geschrieben 11. Juni 2003 Habs inzwischen über den Umweg eines 2. SELECTs gelöst. Mit dem Access-Abfrage Ding komm ich nicht klar, da hab ich schon keinen Plan wie ich den Join hinbekommen soll beim Zusammenklicken. Für einfach Abfragen ist das Ding gut, aber für anderes kenn ich mich in Access nicht gut genug aus... ist halt keine Datenbank sondern ein Spielzeug... Zitieren
Empfohlene Beiträge
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.