Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 选择2个相同的数据库以在一个列表中获取2个网站订单_Php_Mysql - Fatal编程技术网

Php 选择2个相同的数据库以在一个列表中获取2个网站订单

Php 选择2个相同的数据库以在一个列表中获取2个网站订单,php,mysql,Php,Mysql,我正在尝试将两个数据库连接到一个mysql查询中,这也很棒 之后,我尝试在正确的数据库中查找顺序数据,从中获取meta_值 但它混合了meta_value$first name,有时在行中重复它们 如果我只连接1个数据库,它们将按它们应该的方式出现 谁都能看出哪里出了问题 示例的Url:https:// 如果您的连接在同一个数据库服务器上,则可以指定模式(数据库名称),以便通过一个连接从两个连接中选择内容。您可以通过使用schema\u name.table\u name而不仅仅是表名来实现这一

我正在尝试将两个数据库连接到一个mysql查询中,这也很棒

之后,我尝试在正确的数据库中查找顺序数据,从中获取meta_值

但它混合了meta_value$first name,有时在行中重复它们

如果我只连接1个数据库,它们将按它们应该的方式出现 谁都能看出哪里出了问题

示例的Url:https://


如果您的连接在同一个数据库服务器上,则可以指定模式(数据库名称),以便通过一个连接从两个连接中选择内容。您可以通过使用
schema\u name.table\u 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')

谢谢你的回答。但它给了我这个错误。不正确地使用UNION和ORDER BYMy bad。你应该在最后只放一次ORDERBY子句。我编辑了我的答案。
ORDER BY
LIMIT
将应用于结果,因此您希望
LIMIT 10
,它将在两个表之间混合。如果您明确希望每个表中有5个,那么
UNION
可能不起作用,您仍然需要有两个单独的查询。(您仍然可以通过单个连接执行这些操作)是的,我现在说:表'xxx_wp282.schema1.wpd2_posts'不存在它们存储在
$v1
$v2
中。schema name=db name。
WHERE post_status IN('wc-processing', 'wc-completed','wc-failed')