我必须将数据从一个表插入另一个表,并将一些硬代码数据插入到同一个表中。 例如: -
$value1 = "abc";
$value2 = "xyz";
mysql_query("insert into table1(name,address,state,city) select * from table2");
表1中的列是: -
的姓名,地址,州,城市。
表2中的列是: -
姓名和地址。
现在我必须在表2中插入名称和地址,并在单个查询中将$ value1和$ value2的州,城市值插入表1。 我不想在第二次使用更新查询。
请建议我。 非常感谢。
答案 0 :(得分:0)
mysql_query("insert into `table 1`(name,address,state,city) select name,address, '$value1', '$value2' from table2");
注意:不推荐使用mysql_ *
要调试查询,您可以使用
echo mysql_errno() . ' - ' . mysql_error();
正如@Rozklad所提到的,如果表名中有空格,而table 1
不是示例名称,那么您需要使用`符号
答案 1 :(得分:0)
您的表名或拼写错误有空格,因此请使用这些`来澄清表的名称,否则,查询似乎没问题就像ushakov发布的那样
mysql_query("insert into `table 1`(name,address,state,city) select name,address,'$value1','$value2' from table2");
答案 2 :(得分:0)
$value1 = "abc";
$value2 = "xyz";
$result=mysql_query(select * from table2);
$row=mysql_fetch_array($result);
mysql_query("insert into table1(name,address,state,city) values('$row[name]','$row[address]','$value1','$value1')");