Code: Alles auswählen
Nun möchte ich jene Musikstücke abfragen, die sowohl den "classic" als auch den "jazz" Stil zugewiesen haben.
Code: Alles auswählen
Nun möchte ich jene Musikstücke abfragen, die sowohl den "classic" als auch den "jazz" Stil zugewiesen haben.
Ich weiß nicht genau, wie du das meinst, aber ich brauche die "stile" Tabelle für Übersetzungen, deshalb kann ich die nicht streichen.af0815 hat geschrieben: Bei deinem JOIN sind IMHO zuviele drinnen.
werke <-> werke_stile <-> stile
Genaugenommen nichts, weil man sich mit SETs einschränkt und die Lösung von dir mit dem M:N Tabelle (werke_stile) schon eine sehr saubere Lösung ist und auch auf allen Servern läuft. Ich habe im Studio dann gleich gesehen warum ich vorher quatsch geschrieben habe - habe ich deswegen rausgenommen.theo hat geschrieben:Was hält ihr davon?
Code: Alles auswählen
SELECT dbo.stile.stilname, dbo.werke.titel
FROM dbo.werke_stile INNER JOIN
dbo.werke ON dbo.werke_stile.werk_id = dbo.werke.werk_id INNER JOIN
dbo.stile ON dbo.werke_stile.stil_id = dbo.stile.stile_id
Code: Alles auswählen
SELECT a.titel
FROM dbo.v_werkstil AS a INNER JOIN
dbo.v_werkstil AS b ON a.titel = b.titel
WHERE (a.stilname = 'classic') AND (b.stilname = 'jazz')
Naja, wäre halt "quick and dirty".af0815 hat geschrieben:Genaugenommen nichts, weil man sich mit SETs einschränkt und die Lösung von dir mit dem M:N Tabelle (werke_stile) schon eine sehr saubere Lösung ist und auch auf allen Servern läuft. Ich habe im Studio dann gleich gesehen warum ich vorher quatschtheo hat geschrieben:Was hält ihr davon?