Zu dem Dienstplan-Projekt, wegen dem ich schon zwei Fragen gestellt hatte. Hier noch eine für mich unüberwindliche Sache.
Das wichtigste Formular wird ausgefüllt von Abfrage1 (wird später einen schlaueren Namen bekommen). Im Formular kann die Haupt-Tabelle „Dienst-Planung“ gefiltert werden und zwar nach “EintragsTag”.“EintragsTag” (Tabelle vorgefertigter Tage, nämlich derjenigen Tage, die von Belang sind) und nach Mitarbeitern (um sehen zu können, wer an welchem Tag schon verplant ist).
Wie auch in meiner vorigen Frage dargestellt, könnte jeder Mitarbeiter am Tag „x“ an maximal drei Orten Dienst haben. Daher sind in der Haupt-Tabelle „Dienst-Planung“ u.a. die Spalten Ort1, Ort2, Ort3.
Meine Frage bezieht sich auf die „Abfrage1“:
Der erste Ansatz funktioniert, zeigt aber nur einen Ort
SELECT "Dienst-Planung"."dienstID", "EintragsTag"."EintragsTag", "Mitarbeiter"."MitarbeiterVornamen", "Orte"."OrteName" FROM "Dienst-Planung", "Mitarbeiter", "Orte", "EintragsTag" WHERE "Dienst-Planung"."dienstMitarbeiter" = "Mitarbeiter"."MitarbeiterId" AND "Dienst-Planung"."dienstOrt1" = "Orte"."OrteId" AND "Dienst-Planung"."dienstTag" = "EintragsTag"."DatumID"
Wenn ich nun AND "Dienst-Planung"."dienstOrt2" = "Orte"."OrteId"
hinzufüge, wird mir überhaupt nichts mehr angezeigt
SELECT "Dienst-Planung"."dienstID", "EintragsTag"."EintragsTag", "Mitarbeiter"."MitarbeiterVornamen", "Orte"."OrteName" FROM "Dienst-Planung", "Mitarbeiter", "Orte", "EintragsTag" WHERE "Dienst-Planung"."dienstMitarbeiter" = "Mitarbeiter"."MitarbeiterId" AND "Dienst-Planung"."dienstOrt1" = "Orte"."OrteId" AND "Dienst-Planung"."dienstOrt2" = "Orte"."OrteId" AND "Dienst-Planung"."dienstTag" = "EintragsTag"."DatumID"
Daraus ergibt sich die konkrete Frage:
Ich habe drei Spalten (Ort1, Ort2, Ort3), die wie alles in der Haupt-Tabelle „integer“-Werte beinhalten. Jeder der drei Orte bezieht sich ja auf die knapp zwanzig Orte in der Orte-Tabelle, und zwar auf die gleichen. Während der Planung will man ja nun nicht Ziffern lesen, sondern die Namen der Orte.
Wie sage ich dem guten Base, daß er mir alle drei Male die Ortsnamen darstellen muß?
Müßte ich vielleicht drei (identische) Tabellen mit Orten kreieren?