如何比较两个相同的表以匹配或不匹配行?

时间:2017-10-13 13:22:23

标签: sql sql-server sql-server-2012

如何比较每个匹配或不匹配行的两个表。   我有一个像下面的表,其中每一行是设备的配置,我需要将其与另一个相同的表进行比较,并找出哪些行不匹配

PID DEVID  INID EVTYPEID EVID   ALID    PARMID TEXTID
1   20      0     30      0    100102      0    14
1   103     0     30      0    100103      0    15              
9   21      0     30      0    100113      0    25
0   31      2     30      0    100114      0    26
8   38     18     4      53    100114      0    0
4   20     17     4      53    1000114     0    0  

谢谢

2 个答案:

答案 0 :(得分:2)

您可以使用input[id*=ContentPlaceHolder][checked]。您可能希望指定表列以确保它们的顺序正确。

except

对于匹配的行,您可以使用select * from tbl1 except select * from tbl2

答案 1 :(得分:0)

您可以使用existsnot existsinnot in来比较表格之间的值。

    Select PID, DEVID, INID, EVTYPEID,EVID   ALID,PARMID,TEXTID from tableA as A 
where exists (select 1 from tableB as B where a.PID=b.PID and a.DEVID=b.DEVID...) - -  you can add as per ur requirement)