他们都有FILEID和用户id字段从表2除去表1的基础上,2场
表1: FILEID用户id
表2: FILEID用户id
我会喜欢从表2中删除所有行,如果他们不在表1,基于他们的fileId和userId ..不只是一个领域,但在两个...
亲切的问候, J
他们都有FILEID和用户id字段从表2除去表1的基础上,2场
表1: FILEID用户id
表2: FILEID用户id
我会喜欢从表2中删除所有行,如果他们不在表1,基于他们的fileId和userId ..不只是一个领域,但在两个...
亲切的问候, J
delete from table2
where fileid not in (select fileid from table1)
and userId not in (select userId from table1)
谢谢你的回答。 – jon 2012-07-10 11:10:28
TRY(假设id
既是表的主键)
DELETE FROM table2
WHERE id NOT IN (
SELECT 'id' FROM table1 t1
INNER JOIN table2 t2 ON (t1.field=t2.filed AND t1.userid = t2.userid)
)
谢谢你的回答,我会想象它会比接受的答案更快,但是我没有一个ID主键...我会测试它..虽然..关于J – jon 2012-07-10 11:15:08
DELETE FROM table2 WHERE userId NOT IN (SELECT userId from table1) AND
fileId NOT IN (SELECT fileId from table1)
谢谢你的回答,但juergen打了2分钟!谢谢。 – jon 2012-07-10 11:11:23
退房这种方法。测试工作。
CREATE table table1(field varchar(10),userid varchar(20));
CREATE table table2(field varchar(10),userid varchar(20));
insert into table1 values('10','vish');
insert into table1 values('11','atul');
insert into table1 values('12','nish');
insert into table2 values('10','vish');
insert into table2 values('11','atul');
insert into table2 values('13','paul');
insert into table2 values('14','ganesh');
DELETE from table2
WHERE NOT exists
(select field+userid from table1 t1 where t1.field+userid = table2.field+userid);
SELECT * FROM table2;
你试过了什么? – Khaleel 2012-07-10 10:27:22