SQL MySQL Befehl überprüfen

lordg2009

Lt. Commander
Registriert
Apr. 2009
Beiträge
1.503
Hi,

ich habe 2 Tabellen mit Filmen. Eine entspricht den besten 10000 Filmen von moviepilot mit IMDbID und die andere Filmen, die ich schon gesehen habe mit IMDbID. Ich möchte jetzt in der Tabelle mit den moviepilot filmen die Spalte Seen auf 1 setzen, wenn der Film in der gesehen Liste steht. Dafür soll ein SQL Befehl herhalten. Folgendes habe ich mir vorgestellt:

Code:
UPDATE moviepilot SET Seen=1 WHERE IMDbID IN (SELECT IMDbID FROM mylist)

funktioniert das?
 
Du hast es wohl richtig gemeint nur ein falsch angegangen. Das was du brauchst ist ein JOIN: https://dev.mysql.com/doc/refman/5.7/en/join.html

Für deinen Fall könnte das z.B. sein:

Code:
UPDATE moviepilotList
INNER JOIN imdbList ON moviepilotList.imdbId = imdbList.imdbId
SET moviepilotList.seen = 1
 
Hi,

Das was du brauchst ist ein JOIN

nö, absolut nicht. "Brauchen" tut man JOINs so gut wie nie, man kann im Grunde so gut wie jeden JOIN auch anders schreiben. Performance und die Lesbarkeit sind wieder etwas anderes. Seine Version sollte aber durchaus funktionieren.

VG,
Mad
 
Zurück
Oben