Hallo, ich habe im Augenblick folgendes kompliziertes Statement:
select distinct Themen.Deutsch, Themen.Englisch from Themen,
Verknuepfung_Themen_Fehlerauftrittszeitpunkte,
Verknuepfung_Themen_Produkte,
Verknuepfung_Themen_Ventilgrundtypen,
Verknuepfung_Themen_Gehaeusekombinationen,
Verknuepfung_Themen_Nennweiten,
Verknuepfung_Themen_Antriebsarten,
Verknuepfung_Themen_Ruhelage,
Verknuepfung_Themen_Rueckmeldungsorte,
Verknuepfung_Themen_Anschlusskopftypen,
Verknuepfung_Themen_Rueckmeldungen,
Verknuepfung_Themen_Anschaltungsarten,
Verknuepfung_Themen_Liftantrieb,
Verknuepfung_Themen_Fehlercodes,
Verknuepfung_Themen_Konfiguration_TA7,
Verknuepfung_Themen_Toleranzklassen
where (Verknuepfung_Themen_Fehlerauftrittszeitpunkte.Fehlerauftrittszeitpunkte_ID=4)
and (Verknuepfung_Themen_Fehlerauftrittszeitpunkte.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Produkte.Produkte_ID=7)
and (Verknuepfung_Themen_Produkte.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Ventilgrundtypen.Ventilgrundtypen_ID=29)
and (Verknuepfung_Themen_Ventilgrundtypen.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Gehaeusekombinationen.Gehaeusekombinationen_ID=21)
and (Verknuepfung_Themen_Gehaeusekombinationen.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Nennweiten.Nennweiten_ID=21)
and (Verknuepfung_Themen_Nennweiten.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Antriebsarten.Antriebsarten_ID=15)
and (Verknuepfung_Themen_Antriebsarten.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Ruhelage.Ruhelage_ID=3)
and (Verknuepfung_Themen_Ruhelage.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Rueckmeldungsorte.Rueckmeldungsorte_ID=10)
and (Verknuepfung_Themen_Rueckmeldungsorte.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Anschlusskopftypen.Anschlusskopftypen_ID=10)
and (Verknuepfung_Themen_Anschlusskopftypen.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Rueckmeldungen.Rueckmeldungen_ID=8)
and (Verknuepfung_Themen_Rueckmeldungen.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Anschaltungsarten.Anschaltungsarten_ID=8)
and (Verknuepfung_Themen_Anschaltungsarten.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Liftantrieb.Liftantrieb_ID=3)
and (Verknuepfung_Themen_Liftantrieb.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Fehlercodes.Fehlercodes_ID=29)
and (Verknuepfung_Themen_Fehlercodes.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Konfiguration_TA7.Konfiguration_TA7_ID=12)
and (Verknuepfung_Themen_Konfiguration_TA7.Themen_ID=Themen.ID)
and (Verknuepfung_Themen_Toleranzklassen.Toleranzklassen_ID=5)
and (Verknuepfung_Themen_Toleranzklassen.Themen_ID=Themen.ID);
Diese Abfrage soll im Prinzip sequenziell erweitert werden. Also zuerst sollen nur die ersten beiden Vergleiche berücksichtigt werden, beim zweiten Aufruf dann die ersten vier, dann die ersten sechs usw.
Da die Tabellennamen aber so komplex sind weiß ich nicht, wie ich diese Abfrage in Java dynamisch erzeugen könnte. Daher dachte ich mir nun, sie einfach komplett zu lassen, und für die Zahlen in den nicht relevanten Vergleichen eine Art Wildcard einzusetzen.
Weiß da jemand Rat? Gefallen tut mir die Lösung aber generell nicht. Hat jemand grundsätzlich eine Idee, was ich vielleicht auch in Bezug auf die Tabellennamen eleganter machen könnte?
Ich wäre echt dankbar!
Gruß,
Henning