Mysql
 sql >> Datenbank >  >> RDS >> Mysql

AUSWÄHLEN * WO NICHT VORHANDEN

Sie haben den Tisch in Ihrer Abfrage nicht aufgenommen.

Ihre ursprüngliche Abfrage wird immer nichts zurückgeben, es sei denn, es gibt überhaupt keine Datensätze in eotm_dyn , in diesem Fall wird alles zurückgegeben.

Angenommen, diese Tabellen sollten auf employeeID verknüpft werden verwenden Sie Folgendes:

SELECT  *
FROM    employees e
WHERE   NOT EXISTS
        (
        SELECT  null 
        FROM    eotm_dyn d
        WHERE   d.employeeID = e.id
        )

Sie können diese Tabellen mit einem LEFT JOIN verbinden Schlüsselwort und filtern Sie NULL heraus 's, aber dies ist wahrscheinlich weniger effizient als die Verwendung von NOT EXISTS .