2015-05-05 182 views
-1

很简单,但我没有得到它。任何方案?MYSQL插入选择,如果选择返回多个值插入

例如:如果有2次名字彼得。但是你应该插入两者。

insert into table1 (id,firstname,zip) values ('%s',(select nametable from table2 where name='peter'),'1234'); 

我希望它可以理解

编辑:你的ID ..我只是改变了它......

我要插入一些地方我不得不从另一个表中选择。但问题是有时我得到的结果不止一个。如果有超过1个结果,我想插入所有结果。

+0

没有,是不是understable。 –

+0

ID从哪里来? 你可以删除“值”,然后“插入表1(从表2中选择)”,但我不确定你想在ID字段中找到什么。 –

+0

发送SELECT语句是多余的。因为你是通过引用名称来要求名字。 – Aviz

回答

0
insert into table1 (id, name, zip) ... 

你想插入什么?

... select id, nametable, '1234' 
from table2 
where name='peter' 

现在你连这2件,它应该工作

+0

它不是关于连接它们。当选择结果多于1行时,它不插入任何东西。我希望它插入任何东西。那是我的问题。 – Kbi

+0

我的查询与你的查询稍有不同。你可能想看看http://www.w3schools.com/sql/sql_insert_into_select.asp –

+0

好吧我看到了,我该怎么做,如果我需要做另一个选择去获得ID? – Kbi