如何自行连接行不相等但每个列可能相等的表(不检查每个列)?例如,假设我有一个包含列col1,col2,col3的表,我想做类似
的操作select * from table T1, table T2 where T1.col1 != T2.col1 or T1.col2 != T2.col2 or T1.col3 != T2.col3
换句话说,我想要除了与自己配对的所有配对,但不需要检查每一列。该表没有唯一键(但每行都是唯一的)。请不要告诉我只添加一个唯一的密钥,这不是问题的关键。谢谢!
答案 0 :(得分:0)
如果您想要一个不等于条件的查询,那么您应该使用'<>'。
尝试此查询:
select * from table T1, table T2 where T1.col1 <> T2.col1 or T1.col2 <> T2.col2 or T1.col3 <> T2.col3