如何使用MySQL在单个查询中查询两个不同的数据库?

时间:2010-02-24 04:25:27

标签: php mysql

我有两个发布新闻信息的网站。我刚收到一个请求,要求为其中一个站点制作一个页面,显示两个站点的混合结果。它们位于同一台服务器上,并且表格几乎完全相同,但我在弄清楚如何组合这两个查询时遇到了问题。当完成所有操作后,帖子需要按日期,标题进行排序。

为了论证,表的简化形式是

DB 1,TABLE Clips1(PK_ID,DateToShow,Title,Description)

DB 2,TABLE Clips2(PK_ID,DateToShow,Title,Description)

因此,单个查询将同时命中两个数据库(用户名和密码当前不同),或两个查询以及某种组合,可以对日期和标题进行排序。

1 个答案:

答案 0 :(得分:1)

IF 您可以使用单个连接进行查询,这很简单。

您说模式位于同一台服务器上,因此使用适当的权限时,这应该不是问题。

这个的一般语法是:

SELECT schemaA.table.column
FROM schemaA.table
UNION
SELECT schemaB.table.column
FROM schemaB.table

您甚至可以执行JOIN,只需记住为每个表和字段引用指定适当的架构。