删除匹配多个列相同表的行

4 sql

使用SQL,我有5列:ssn,lastname,firstname,RF和一个标志字段.我需要通过这个表,其中4列等于另一行,并且该行中的flag字段的值等于2050,然后删除该2050记录.

Red*_*ter 8

delete from MyTable m
where flag = 2050
and exists (
    select 1 from MyTable where
    MyTable.ssn = m.ssn 
        and MyTable.lastname=m.lastname 
        and MyTable.firstname=m.firstname 
        and MyTable.RF=m.RF 
        and MyTable.flag <> 2050
)
Run Code Online (Sandbox Code Playgroud)