【问题标题】:Search for Common Values between two different Databases搜索两个不同数据库之间的共同值
【发布时间】:2016-08-27 17:20:01
【问题描述】:

我在 Amazon RDS 上托管了两个独立的数据库(不是表),我通过 Mac OSX El Capitan 上的 MySQL Workbench 访问它们。

DB1 的结构如下:

--id --- first_name --- last_name --- city --- dob

DB2 的结构是这样的

--id --- company_name --- company_sector --- company_founder --- status

我有没有办法在这两个独立的数据库之间搜索公共值(db1.first_name + db1.last_name, db2.company_founder)?

还想补充说 db1.id 和 db2.id 不相等。它们来自不同的来源。

【问题讨论】:

  • 首先,您所称的数据库似乎是一个表。其次,SQL 提供了许多方法来做你想做的事。 . .加入,inexists 都会浮现在脑海中。
  • 不,我理解联接(内部、外部)和表,但在这种情况下,它们是两个完全独立的数据库,从不同的来源编译。例如,我只是想看看 DB1 中的某个人是否是 DB2 中某公司的创始人。
  • 如果数据库共享一个公共引擎,您应该能够使用schema.table 表示法将它们连接起来。否则,您将不得不使用两个本地游标并以编程方式线性遍历它们。

标签: mysql sql database mysql-workbench rds


【解决方案1】:

你的语法应该是这样的:

select db1.person.*
from 
  db1.person
  inner join db2.person
    on db1.person.id = db2.person.id
    where ....

您还可以根据需要指定名称以缩短内容。

【讨论】:

    猜你喜欢
    • 2021-05-07
    • 2015-12-21
    • 1970-01-01
    • 2020-10-04
    • 1970-01-01
    • 2011-12-04
    • 1970-01-01
    • 2018-06-27
    • 1970-01-01
    相关资源
    最近更新 更多