我有两个像这样的结构的表
Table 1
tid | population
1 | 50
2 | 55
3 | 45
Table 2
tid | population
1 | 50
2 | 60
3 | 40
我必须比较这两个表并找出哪些表没有改变(在这种情况下我只能找到tid 1)
我可以创建2个数组进行循环,但由于每个表都有超过40k的记录。我正在寻找更简单,更快捷的方式!
编辑。 看起来我应该使用连接。我试图做的事情如下。 PS。表1名称为2016-5-20表2名称2016-05-21
$sth = $conn->prepare('SELECT `2016-5-20.tid`, `2016-5-20.population`
FROM `2016-5-20`
JOIN `2016-05-21` ON 2016-5-20.tid = 2016-05-21.tid AND 2016-5-20.population = 2016-05-21.population');
$sth->execute();
$result2 = $sth->fetchAll();
print_r($result2);
答案 0 :(得分:4)
你可以加入他们:
SELECT t1.tid, t1.population
FROM table1 t1
JOIN table2 t2 ON t1.tid = t2.tid AND t1.population = t2.population
答案 1 :(得分:0)
select `t1`.`id` from `table1` as `t1`,`table2` as `t2`
where `t1`.`id`=`t2`.`id` and `t1`.`population`<>`t2`.`population`