SELECT 2相同的数据库,在一个列表中获得2个网站订单

时间:2017-08-03 19:44:42

标签: php mysql

我试图将两个数据库连接到一个mysql查询中,它也很棒!

之后,我尝试在正确的数据库中查找订单数据,以便从中获取meta_value。

但它混合了meta_value $ first name,有时会在行上复制它们。

如果我只是将1个数据库统一起来,那么它们就会出现 任何人都可以看到出了什么问题?

网址示例:https:// http://kundeservice.coalsmile.com/test4.php

array([[[0, 1], [2, 3], [4, 5]]])

1 个答案:

答案 0 :(得分:1)

如果您的连接位于同一数据库服务器上,则可以指定架构(数据库名称)以通过一个连接从两者中选择内容。您可以使用schema_name.table_name而不是表格的名称来执行此操作。

所以喜欢:

SELECT * FROM schema_name.wpd2_posts WHERE ...

在您的情况下,您可以使用UNION将它们放在一起:

SELECT * FROM `schema1.wpd2_posts` 
   where post_status='wc-processing' or post_status='wc-completed'
    or post_status='wc-failed' UNION
SELECT * FROM `schema2.wpd2_posts` 
   where post_status='wc-processing' or post_status='wc-completed'
    or post_status='wc-failed' order by post_date DESC LIMIT 10

在旁注中,您可以通过为您的标准使用IN()子句使此查询更具可读性:

WHERE post_status IN('wc-processing', 'wc-completed','wc-failed')