I wonder is the following query valid in sql:
DELETE FROM Reporters
JOIN Cases ON Reporters.CaseId = Cases.ID
WHERE Cases.Court = @Court
I get an error:
Incorrect syntax near join
I wonder is the following query valid in sql:
DELETE FROM Reporters
JOIN Cases ON Reporters.CaseId = Cases.ID
WHERE Cases.Court = @Court
I get an error:
Incorrect syntax near join
DELETE r
FROM reporters as r
INNER JOIN cases as c
ON r.CaseId = c.ID
WHERE c.Court = @Court
Yes you can, you just have to specify Alias to your table and delete using it:
DELETE R
-- SELECT *
FROM Reporters AS R
INNER JOIN Cases AS C
ON R.CaseId = C.ID
WHERE C.Court = @Court ;
It will work if you alias the tables like;
DELETE r
FROM Reporters AS r
INNER JOIN Cases AS c
ON r.CaseId = c.ID
WHERE c.Court = @Court
Or you could use
DELETE FROM Reporters
WHERE EXISTS (SELECT 1 FROM Cases WHERE Cases.ID = Reporters.CaseId AND Cases.Court = @Court)
mention from which table that you wanted to delete from. (the solution is specific to SQL Server)
DELETE re --if you wanted to delete the cases replace `re` with `ca`
FROM Reporters re
JOIN Cases ca ON re.CaseId = ca.ID
WHERE ca.Court = @Court