Php 从不同的数据库中选择两个或多个表

Php 从不同的数据库中选择两个或多个表,php,mysql,Php,Mysql,如何在一个查询中使用位于不同数据库中的两个表意味着 SELECT table1.id, table1.name, table2.id, table2.telephone FROM table1, table2 WHERE table1.id = table2.id 这里,table1和table2在单独的数据库中。您可以进行跨数据库连接,没有问题。只需在表名前面加上数据库名即可 SELECT t1.id, t1.name, t2.id, t2.telephone FROM db1.tab

如何在一个查询中使用位于不同数据库中的两个表意味着

SELECT table1.id, table1.name, table2.id, table2.telephone
FROM table1, table2   
WHERE table1.id = table2.id

这里,
table1
table2
在单独的数据库中。

您可以进行跨数据库连接,没有问题。只需在表名前面加上数据库名即可

SELECT t1.id, t1.name, t2.id, t2.telephone
FROM db1.table1 t1
INNER JOIN db2.table2 t2 on t1.id = t2.id;

不过,要小心权限。如果用户无权访问其中一个数据库,此选择将失败。

您需要为表以及字段/属性使用完全限定的名称:

SELECT table1.id, table1.name, table2.id, table2.telephone
FROM db_1.table1, db_2.table2
WHERE table1.id = table2.id

如何用php的方式编写它?请举例说明如何在php中一次打开不同的两个数据库连接?只要执行此SQL,它就应该可以正常工作。当我们一次使用两个数据库或在单个数据库中使用两个表时,是否存在速度相关问题?我想,没有重大变化(或根本没有变化),但您应该对此进行衡量。+1不,使用限定表名不会影响性能。字段(例如,$Row['column_name'])的检索列名是什么?我知道这篇文章很旧,但只是想知道是否可以通过此查询获取数据库名?这真的是一个离题吗?