Kürzlich abgeholt SQL und ich habe ein Problem mit einer bestimmten korrelierten Unterabfrage.Wie man eine Variable in einer korrelierten Unterabfrage korrigiert (postgresql)
SELECT a.*
FROM videos a
WHERE EXISTS
(SELECT NULL
FROM actors b
WHERE a.actor not ilike b.actor
and a.title ilike ('%' + b.actor + '%'));
Im Grunde möchte ich alle Einträge in der Video-Tabelle finden, die einen Schauspielers Namen im Titel hat, aber nicht markiert, wie in dem Video zu sein. Der obige Code gibt nur jedes Video in der Tabelle zurück, was vermutlich darauf zurückzuführen ist, dass die Unterabfrage nicht denselben "b.actor" in beiden Zeilen verwendet. Wie kann ich es ändern, um tatsächlich zu tun, was ich will? Danke im Voraus.
Der String-Verkettungsoperator in SQL ist '||' nicht '+' –