大家好我一直在尝试比较两个有不同列的类似表
表1列有ID_A,X,Y,Z和 表2列ID_B,X,Y,Z
如果列X,Y或Z的值均为= 1 查询的结果将输出列
ID_A,ID_B,X,Y,Z
我认为它会是一个交叉语句,但我遇到了问题,因为列的名称和ID_A和ID_B的值完全不同。
这个SQL语句会是什么样的?我很欣赏任何想法,一直在为这个想法敲打我的头。
答案 0 :(得分:2)
要输出两个表中的行,内部联接将起作用:
select *
from table1 a
inner join table2 b
on a.x = b.x and a.y = b.y and a.z = b.z
要仅列出两个表中x = 1,y = 1或z = 1的行,请添加where子句,如;
where a.x = 1 or a.y = 1 or a.z = 1