首页 > 解决方案 > 如何显示我们在两个表的内部连接中获得的行中的列差异

问题描述

我有两个数据库 db1 和 db2。两者都有 auth_item 表,我对这两个数据库 auth_item 表与 t1.name = t2.name 列进行了内连接。现在我想比较这两个表的所有列,并使用内连接显示不同列值的结果。

来自 db1 的 t1

-----------------  
:name   : type  :
----------------- 
: abc   : 1     : 
:  xy   : 2     :  
:  as   : 3     : 
:  yz   : 2     :  
----------------- 

来自 db2 的 t2

-----------------  
:name   : type  :  
-----------------  
: abc   : 2     :   
:  xy   : 2     :   
:  as   : 3     :  
-----------------  

在 t1 和 t2 的内部连接中,t1.name = t2.name 将显示

-----------------  
:name   : type  :  
-----------------  
: abc   : 1     :   
:  xy   : 2     :   
:  as   : 3     :  
-----------------  

但我想将列差异输出显示为

-----------------  
:name   : type  :  
-----------------  
: abc   : 1     :   
-----------------  

所以请为此建议查询..

标签: mysql

解决方案


你可以试试下面 -

select a.name, a.type from t1 inner join
t2 on t1.name = t2.name
where a.type!=b.type

推荐阅读