如何查询数据库,只查找我们正在比较的两个表中不相等的列?
例如。
表A:
Name Age City State
John 32 xxx xxx
Joe 45 yyy yyy
Mark 22 zzz zzz
表B:
Name Age City State
John 32 xxx xxx
Joe 45 yyy yyy
Mark 21 zzz zzz
我想只选择它们与TableB不同的列值。 同名,年龄,州但城市不同的地方。
例如Mark已满22岁,我需要在TableB中更新他的年龄。所以我需要我的查询才能找到需要更新的列。在上面的例子中,它应该只返回Mark的记录的Age列。
请指导。
答案 0 :(得分:1)
试试这个:
SELECT T1.Name,T1.Age,T1.State,T1.City as City1,T2.City as City2
FROM TableA T1, TableB T2
WHERE T1.Age=T2.Age
AND T1.Name=T2.Name
AND T1.State=T2.State
AND T1.City<>T2.City