1.A库比B库多出的记录,也就是说在A中有,在B中无的纪录: select * from A where Not Exists (select * from B where A.姓名=B.姓名 and A.身份证号=B.身份证号) 2.A库比B库少出的记录,也就是说在A中无,在B中有的纪录: select * from B where Not Exists (select * from A where A.姓名=B.姓名 and A.身份证号=B.身份证号) 3.A,B相同的记录 select * from A inner join B on A.姓名=B.姓名 and A.身份证号=B.身份证号
不需要LINK TABLE,假定DB1.MDB中有TableA,DB2MDB中有TableB1.A库比B库多出的记录,也就是说在A中有,在B中无的纪录: SELECT TableA.* FROM [DB1.MDB].TableA LEFT JOIN [DB2.MDB].TableB ON (TableA.姓名 = TableB.姓名) AND (TableA.身份证号 = TableB.身份证号) WHERE (((TableB.姓名) Is Null));2.A库比B库少出的记录,也就是说在A中无,在B中有的纪录: SELECT TableB.* FROM [DB1.MDB].TableA RIGHT JOIN [DB2.MDB].TableB ON (TableA.姓名 = TableB.姓名) AND (TableA.身份证号 = TableB.身份证号) WHERE (((TableA.姓名) Is Null));3.A,B相同的记录: SELECT TableA.*, TableB.* FROM [DB1.MDB].TableA INNER JOIN [DB2.MDB].TableB ON (TableA.姓名 = TableB.姓名) AND (TableA.身份证号 = TableB.身份证号);以上sql不包含MDB文件的路径,如果需要的话,请把[DB1.MDB]改成带路径的全称如[C:\MYFILE\DB1.MDB]
select * from A where Not Exists
(select * from B where A.姓名=B.姓名 and A.身份证号=B.身份证号)
2.A库比B库少出的记录,也就是说在A中无,在B中有的纪录:
select * from B where Not Exists
(select * from A where A.姓名=B.姓名 and A.身份证号=B.身份证号)
3.A,B相同的记录
select * from A inner join B on A.姓名=B.姓名 and A.身份证号=B.身份证号
SELECT TableA.*
FROM [DB1.MDB].TableA LEFT JOIN [DB2.MDB].TableB ON (TableA.姓名 = TableB.姓名) AND (TableA.身份证号 = TableB.身份证号)
WHERE (((TableB.姓名) Is Null));2.A库比B库少出的记录,也就是说在A中无,在B中有的纪录:
SELECT TableB.*
FROM [DB1.MDB].TableA RIGHT JOIN [DB2.MDB].TableB ON (TableA.姓名 = TableB.姓名) AND (TableA.身份证号 = TableB.身份证号)
WHERE (((TableA.姓名) Is Null));3.A,B相同的记录:
SELECT TableA.*, TableB.*
FROM [DB1.MDB].TableA INNER JOIN [DB2.MDB].TableB ON (TableA.姓名 = TableB.姓名) AND (TableA.身份证号 = TableB.身份证号);以上sql不包含MDB文件的路径,如果需要的话,请把[DB1.MDB]改成带路径的全称如[C:\MYFILE\DB1.MDB]