Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.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 如何在MySQL中合并表_Php_Mysql - Fatal编程技术网

Php 如何在MySQL中合并表

Php 如何在MySQL中合并表,php,mysql,Php,Mysql,我只想将这些表合并到一个查询中,但它不起作用。实际上,有太多的表和列,但对于这个例子,我只放了一些 $insertSQL_sr1 = "INSERT INTO sr1_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr1`"; $insertSQL_sr2 = "

我只想将这些表合并到一个查询中,但它不起作用。实际上,有太多的表和列,但对于这个例子,我只放了一些

$insertSQL_sr1 = "INSERT INTO sr1_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr1`";

$insertSQL_sr2 = "INSERT INTO sr2_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr2`";

$insertSQL_sr3 = "INSERT INTO sr3_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr3`";

$insertSQL_full = $insertSQL_sr1.";".$insertSQL_sr2.";".$insertSQL_sr3;

mysql_query($insertSQL_full);

mysql_select_db($database_pods, $pods);
  $Result1 = mysql_query($insertSQL_full, $pods) or die(mysql_error());
出现一个错误:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO sr2_full (`date`, `total_pending`, `appt_today`, `percent_appt_today' at line 1
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO sr2_full (`date`, `total_pending`, `appt_today`, `percent_appt_today' at line 1
我的第二次编辑:

$insertSQL = "INSERT INTO sr1_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr1`; INSERT INTO sr2_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr2`; INSERT INTO sr3_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr3`";

mysql_select_db($database_pods, $pods);
  $Result1 = mysql_query($insertSQL, $pods) or die(mysql_error());
出现一个错误:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO sr2_full (`date`, `total_pending`, `appt_today`, `percent_appt_today' at line 1
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO sr2_full (`date`, `total_pending`, `appt_today`, `percent_appt_today' at line 1

啊,我想他想把数据从一个表复制到另一个表。只需在一个步骤中读取它,将它临时存储在某个PHP变量中,然后在另一个步骤中插入它

$insertSQL1 = "INSERT INTO sr1_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr1`";

$insertSQL2 = "INSERT INTO sr2_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr2`";

$insertSQL3 = "INSERT INTO sr3_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr3`";
添加
组合两个SQL语句

您可以这样组合这些查询

$insertSQL_Single = $insertSQL1.";".$insertSQL2.";".$insertSQL3;
结果查询:

INSERT INTO sr1_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr1`;INSERT INTO sr2_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr2`;INSERT INTO sr3_full (`date`, `total_pending`, `appt_today`, `percent_appt_today`) SELECT `date`, `total_pending`, `appt_today`, `percent_appt_today` FROM `sr3`
我用PhpMyAdmin试过了。查询成功

它不能由mysql\u query()执行。。让我们找一些其他的窍门。我们需要分开执行

使用mysqli执行此操作

$mysqli = new mysqli("host","username","password", "databasename");
if (!$mysqli->multi_query($insertSQL_Single)) {
    echo "Multi query failed: (" . $mysqli->errno . ") " . $mysqli->error;
}
else
{
    echo "success";
}

我无法理解您的问题-您是否收到任何错误消息?是否要合并行或加入行?无法理解您想要什么或您的问题是什么。很抱歉,我的英语不好,我已编辑了上面的代码。对于您的参考,您可以访问以供参考,您可以访问我只想将所有查询合并成一个查询,可以吗?我已经按照您所说的做了,代码如上,但出现了一个错误。@mastersuse,我也编辑了我的答案。请检查结果查询。@mastersuse,mysql\u查询无法执行它。让我们找一些其他的窍门。我们需要单独执行。我刚刚编辑了我的第二次编辑,但仍然有错误。请让我解决这个问题(你能帮我吗?但事实上我在一个网站上发现查询可以使用,但为什么我的查询不能?看