T
Tomson
Gast
Moin Moin,
Ich sitze nun seit mehr als 3 Tagen an einer SQL-Abfrage und stehe irgendwie auf dem Schlauch...
Gegeben habe ich 3 Tabellen. Eine Tabelle "Raum", in der spezielle Raumeigenschaften wie Größe und Ansprechpartner eingetragen sind, eine Tabelle "Attribute" in der verschiedene Gegenstände aufgelistet sind, die in einem Raum enthalten sein können. (Beamer, Flipchart etc.) (Beide haben hochzählende IDs)
Und eine Tabelle "Rauminhalt" in der nach folgendem Muster die Daten verknüpft werden (Siehe Anhang 'tabelle_rauminhalt.jpg')
einer RID (Raumid) wird eine AID (Attributid) zugeordnet (und eine bestimmte Anzahl, die jedoch für die Suche nicht weiter von Bedeutung ist)
Es geht nun darum in einer erweiterten Suche alle RaumIDs auszugeben, die die in einer Checkbox markierten Attribute enthalten...
Dazu hatte ich mir folgendes ausgedacht(was leider nicht funzt ):
Die Idee dahinter ist, dass er 2 Selects verschachteln soll, wobei das erste Select alle Datensätze zurückliefern soll, die eins der angewählten Attribute im AID Feld enthalten und das zweite Select alle zurückgegebenen Werte des Ersten selects prüfen soll, ob eine RaumID so oft vorhanden ist, wie die gesamtanzahl der angewählten Attribute...
Ich hoffe es war verständlich
Gruß,
Tommi
Ich sitze nun seit mehr als 3 Tagen an einer SQL-Abfrage und stehe irgendwie auf dem Schlauch...
Gegeben habe ich 3 Tabellen. Eine Tabelle "Raum", in der spezielle Raumeigenschaften wie Größe und Ansprechpartner eingetragen sind, eine Tabelle "Attribute" in der verschiedene Gegenstände aufgelistet sind, die in einem Raum enthalten sein können. (Beamer, Flipchart etc.) (Beide haben hochzählende IDs)
Und eine Tabelle "Rauminhalt" in der nach folgendem Muster die Daten verknüpft werden (Siehe Anhang 'tabelle_rauminhalt.jpg')
einer RID (Raumid) wird eine AID (Attributid) zugeordnet (und eine bestimmte Anzahl, die jedoch für die Suche nicht weiter von Bedeutung ist)
Es geht nun darum in einer erweiterten Suche alle RaumIDs auszugeben, die die in einer Checkbox markierten Attribute enthalten...
Dazu hatte ich mir folgendes ausgedacht(was leider nicht funzt ):
Code:
SELECT
T_RV_Raum.RID, T_RV_Raum.RName, T_OIC_Auswahl_Firma.Firma, T_OIC_Auswahl_Firma.WERK
FROM
(SELECT T_RV_Raum.RID, T_RV_Raum.RName, T_OIC_Auswahl_Firma.Firma, T_OIC_Auswahl_Firma.WERK FROM T_RV_Raum INNER JOIN T_OIC_Auswahl_Firma ON T_RV_Raum.RFirmaID = T_OIC_Auswahl_Firma.pkey
WHERE T_RV_Rauminhalt.AID = @AID)
WHERE @rid_count = @anzahl_items
Die Idee dahinter ist, dass er 2 Selects verschachteln soll, wobei das erste Select alle Datensätze zurückliefern soll, die eins der angewählten Attribute im AID Feld enthalten und das zweite Select alle zurückgegebenen Werte des Ersten selects prüfen soll, ob eine RaumID so oft vorhanden ist, wie die gesamtanzahl der angewählten Attribute...
Ich hoffe es war verständlich
Gruß,
Tommi