SELECT Table1.Field1,Table2.Field2 FROM Table1 INNER JOIN Table2 ON NOT Table1.ID=Table2.ID

解决方案 »

  1.   

    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.身份证号
      

  2.   

    如果我用的是access 97数据库 而A库和B库分别在两个MDB中,那SQL应作样写
      

  3.   

    在A(或B)所在的数据库中为B(或A)创建一个Link Table即可。然后访问A(或B),语法同上
      

  4.   

    不需要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]