2016-03-25 10 views
0

kann ich wissen, was die Gründe für mich war, den Fehler des Befehls nicht ordnungsgemäß beendet zu bekommen, wie ich bin nicht sicher, was der Fehler im CodeBefehl nicht richtig beendet Fehler

delete 
    from usernamepassword join faculty_admininfo 
    on (usernamepassword.username = faculty_admininfo.email_address) 
    where faculty_admininfo.employee_id IN ('SCM-021232'); 
+1

wo in der Oracle-Handbuch haben Sie die 'join' Syntax finden die Löschanweisung? –

Antwort

0

Oracle nicht JOIN unterstützt in DELETE Klausel. Das Verwenden von JOIN in DELETE ist also das Problem mit Ihrer Abfrage.

Sie müssen Ihre Abfrage ändern, um stattdessen IN oder EXISTS zu verwenden.

Sie können von den folgenden Abfragen machen -

Verwendung von IN -

DELETE 
    FROM usernamepassword WHERE username IN 
    (SELECT email_address FROM faculty_admininfo 
    WHERE employee_id IN ('SCM-021232')); 

Mit VORHANDEN -

DELETE 
    FROM usernamepassword unpwd WHERE EXISTS 
    (SELECT 1 FROM faculty_admininfo info 
    WHERE info.email_address = unpwd.username 
    AND info.employee_id IN ('SCM-021232'));