近期遇到一个问题,在同一个机器上的两个不同数据库,通过关联查询得到结果的思路,汇总如下两条。
1、创建临时库,将另一库的数据查询出来放至临时库中,之后取交集。
例子:
- 切入A数据库,并在A库创建B库中account表的临时表:
- use A;
- create temporary table account (select * from B.account);
- 此时相当于在A库不同表间的查询,直接查询即可,即:
- select id,mobile,addr from class where addr in account;
注:步骤一中account为新建的临时表,步骤二中的class为A库原有表。通过此,筛选B库account addr字段后和A库class取交集,查询到其id,mobile,addr信息。
- select id,mobile,addr from class where addr in account;
2、通过Excel公式得到结果,前提是数据量不大(十万条以内)
原理:打开excel,把两批数据分别列入两列,通过公式得到结果。
举例:A、B字段同属一个表中,D列mid为另一表的内容。想要查D列在A列求交集后的mobile信息。公式如下
经过筛选后,结果为:
即D与A筛选后所得结果,id及mobile信息。