Programmieren - alles kontrollieren 4.938 Themen, 20.667 Beiträge

SQL Abfrage

Anwender / 11 Antworten / Flachansicht Nickles

Hallo Leute, ich habe ein ähnliches Problem wie logo3.
Ich kriege die Abfrage einfach nicht hin.

Situation
*********

Habe 3 Tabellen:

- tblInterpret (IDInterpret, Interpret)
- tblKategorie (IDKategorie, Kategorie)
- tblInterpret2Kategorie (fIDInterpret, fIDKategorie)

In der Tabelle tblInterpret2Kategorie werden den Interpreten verschiedene Kategorie zugewiesen.

Gewünschte Abfrage
*******************

Die Abfrage soll folgende Spalten enthalten:

- Interpret
- Anzahl Katgorie (in vielen Kategorien er zugeordnet ist)

Zusätzlich soll die Abfrage durch die Bedingung fIDKategorie=X eingeschränkt werden. (X steht für eine beliebige Kategorie).

Ich würde mich sehr über Hilfe freuen. Danke.

Anwender

bei Antwort benachrichtigen
Borlander Anwender „Ich hab mal ein Teil der Abfrage in Access erstellen lassen: SELECT...“
Optionen
Jetzt werden zwar nur Interpreten der Kategorie ID=2 angezeigt, aber in der zweiten Spalte (Anzahl Kategorien) wird überall der Wert 1 angezeigt, obwohl mehrere dieser Interpreten in mehr als nur einer Kategorie zugeordnet sind. Wie muss die Abfrage heissen, damit auch in der Spalte 2 (Anzahl Kategorien) der richtige Wert angezeigt wird?
Naja, die Abfrage liefert Dir genau das was was abgefragt wurde ;-)
Mit einem SubSelect kann man problemlos das gewünschte erreichen:

[...]
WHERE i.IDInterpret IN (
SELECT fIDInterpret FROM tblInterpret2Kategorie WHERE fIDKategorie=X
);

Gruß
Borlander
bei Antwort benachrichtigen