Hallo Leute,
ich habe 3 DB- Tabellen die wie folgt aufgebaut sind:
DIRECTORS
ID (PK)
NAME
MOVIES
ID (PK)
TITLE
MOVIE_DIRECTOR
ID
ID_MOVIE (FK)
ID_DIRECTOR (FK)
MOVIE_TITLE
DIRECTOR_NAME
Jetzt möchte ich in einer SQL Abfrage alle DIRECTORS ermitteln, die
Nicht in MOVIE_DIRECTOR enthalten sind und deren Name z. B. F enthält
Bei dem folgenden Statement bin ich mir sicher, dass der Datensatz nicht in MOVIE_DIRECTOR vorhanden ist also sollten alle Datensätze aus DIRECTORS ausgegeben werden
SELECT DISTINCT NAME FROM DIRECTORS RIGHT JOIN MOVIE_DIRECTOR ON DIRECTORS.NAME!=MOVIE_DIRECTOR.DIRECTOR_NAME WHERE MOVIE_DIRECTOR.MOVIE_TITLE='16 Blocks' AND NAME LIKE '%T%' ORDER BY NAME
Allerdings bekomme ich gar keine Ergebnisse
des weiteren ist die SQL Abfrage mit sehr vielen Datensätzen sehr sehr langsam, hat jemand eine Idee wie ich das optimieren kann?
ich habe 3 DB- Tabellen die wie folgt aufgebaut sind:
DIRECTORS
ID (PK)
NAME
MOVIES
ID (PK)
TITLE
MOVIE_DIRECTOR
ID
ID_MOVIE (FK)
ID_DIRECTOR (FK)
MOVIE_TITLE
DIRECTOR_NAME
Jetzt möchte ich in einer SQL Abfrage alle DIRECTORS ermitteln, die
Nicht in MOVIE_DIRECTOR enthalten sind und deren Name z. B. F enthält
Bei dem folgenden Statement bin ich mir sicher, dass der Datensatz nicht in MOVIE_DIRECTOR vorhanden ist also sollten alle Datensätze aus DIRECTORS ausgegeben werden
SELECT DISTINCT NAME FROM DIRECTORS RIGHT JOIN MOVIE_DIRECTOR ON DIRECTORS.NAME!=MOVIE_DIRECTOR.DIRECTOR_NAME WHERE MOVIE_DIRECTOR.MOVIE_TITLE='16 Blocks' AND NAME LIKE '%T%' ORDER BY NAME
Allerdings bekomme ich gar keine Ergebnisse
des weiteren ist die SQL Abfrage mit sehr vielen Datensätzen sehr sehr langsam, hat jemand eine Idee wie ich das optimieren kann?