Mysql - 使用不同的行值将行列值从一个表复制到另一个表(2次)

时间:2013-10-16 21:35:33

标签: mysql rows bulkinsert

我一直在尝试这个查询,但它给了我一个错误。我相信查询是正确的,但我没有得到我想要的预期结果。任何意见或指导将不胜感激。以下查询仅在我运行第一个查询时有效,但是当我运行第一个和第二个查询时,它会给我错误!

queries:
insert into user_tbl(firstname, lastname, location) 
select `fname`, `lname`, `location` from temp_tbl

insert into user_tbl(location) 
select `location2`from ok

如果我运行第一个查询,它会从temp_tbl复制到user_tbl而不会出现任何错误

Only first query output!
--------------------------------
firstname, lastname, location
john       doe        New York
jane       doe        Mexico

这是我想要的输出:

user_tbl:
--------------------------------
firstname, lastname, location
john       doe        New York
                      Manhattan
jane       doe        Mexico
                      Bahamas

我不知道这里是否还有其他任何查询,但上面的查询是我想出来的。所以,基本上我想要的是每当复制从 temp_table 表到 user_tbl 表的单行列值时,我想为同一行插入一个新行。

提前致谢

2 个答案:

答案 0 :(得分:0)

为什么要插入没有名字和姓氏的行?我认为你没有正确构建。至于失败的原因,错误是什么?可能是第一个和最后一个必填字段吗?

答案 1 :(得分:0)

您应该验证表user_tbl中的属性“firstname”和“lastname”是否可以接受空值。如果这些属性不为null,则在尝试仅在此表中插入“location”时出现错误是正常的。

相关问题