Delete all rows in master table if identical in second table - SQL (1 Viewer)

aranj

Registered User.
Local time
Today, 12:32
Joined
Feb 18, 2003
Messages
44
A SELECT works:

SELECT *
from mastertable
INNER JOIN secondarytable
ON mastertable.Identicalfield = secondarytable.Identicalfield

But none of these do:

DELETE
FROM mastertable
INNER JOIN secondarytable
ON mastertable.Identicalfield = secondarytable.Identicalfield
**Incorrect syntax near the keyword 'INNER'.**

DELETE
FROM mastertable JOIN secondarytable
ON (mastertable.Identicalfield = secondarytable.Identicalfield)
**Incorrect syntax near the keyword 'JOIN'.**

DELETE
FROM mastertable
WHERE (mastertable.Identicalfield = secondarytable.Identicalfield)
**The column prefix 'secondarytable' does not match with a table name or alias name used in the query.**

DELETE
FROM mastertable
WHERE IN (SELECT *
FROM secondarytable)
**Incorrect syntax near the keyword 'IN'.**

Can anyone help? This should be easy, shouldn't it?!
Thank you.
 

Newman

Québécois
Local time
Today, 07:32
Joined
Aug 26, 2002
Messages
766
DELETE *
FROM mastertable
WHERE Identicalfield Not In (Select Identicalfield from secondarytable);
 

aranj

Registered User.
Local time
Today, 12:32
Joined
Feb 18, 2003
Messages
44
Many thanks Newman, though that should be :


WHERE Identicalfield In (Select Identicalfield from secondarytable);


Thanks again.
 

Users who are viewing this thread

Top Bottom