我有两个数据库,为了便于讨论,我们称它们为 db1 和 db2。它们的结构完全相同,并且都有一个名为 table1 的表,其中都有字段 id 和 value1。
我的问题是如何进行查询,为由相同 ID 链接的两个表选择字段 value1???
最佳答案
您可以在表名前加上数据库名,以识别两个名称相似的表。然后,您可以使用该完全限定的表名来引用类似命名的字段。
所以,没有别名:
select db1.table1.id, db1.table1.value1, db2.table1.value1
from db1.table1 inner join db2.table1 on db1.table1.id = db2.table1.id
还有别名
select t1.id, t1.value1, t2.value1
from db1.table1 as t1 inner join db2.table1 as t2 on t1.id = t2.id
您可能还想为所选列设置别名,以便您的选择行变为:
select t1.id as id, t1.value1 as value_from_db1, t2.value1 as value_from_db2
关于sql - 如何从具有相同表和字段名称的不同数据库中选择字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3686014/