sqlite3 inner join 比较所有列

sqlite3 inner join comparing all columns

我有一个 sqlite 数据库,其中包含两个具有相同模式的表 t1、t2。这些表包含多个列 c1、c2、..、cn(超过 50 个)。 我试图找到两个表中存在且相同的整体。 我遇到的问题是一次比较所有列。显然,我不想明确比较每一列。两个表的示例:

SELECT t1.*
FROM t1
INNER JOIN t2
ON t1.c1 = t2.c1
AND t1.c2 = t2.c2
...
AND t1.cn = t2.cn

我想我可以使用 python 的 sqlite3 模块生成这个巨大的查询,但我想知道是否有更优雅的方法。

谢谢

compound SELECT中比较子查询中的所有列:

SELECT * FROM t1
INTERSECT
SELECT * FROM t2;

Sqlite 应该支持 NATURAL JOIN,它默认连接所有 "matching" 列。

SELECT
t1.*
FROM t1
NATURAL JOIN t2