2013-11-01 154 views
0

我想从其他表中选择一列并将其插入另一列。选择并插入mysql

我在表2中有名为image的列,并且想要选择它并将下面的数据与表1一起插入。那可能吗?

$stmt = $mysqli->prepare("insert into table1 (username, firstname, lastname, image) ") 
$stmt->bind_param('sss', $username, $fname, $lname); 
$stmt->execute(); 
+0

table1和table2之间有任何关系吗? –

+0

@JorgeCampos没有。 – user2926655

+0

那你怎么知道从table2插入table1的图像是什么?在了解问题之前,伙计们发布了答案。这很尴尬:P –

回答

0

是的,这是可能的:

$stmt = $mysqli->prepare(" 
    insert into table1 (username, firstname, lastname, image) 
    select ?,?,?,image from table2 
    "); 

...但我希望表2中只有一个行!

+0

什么都没有插入。 – user2926655

+0

那么也许'table2'是空的? – geomagas

0

你可以做一个INSERT ... SELECT查询 - http://dev.mysql.com/doc/refman/5.1/en/insert-select.html

INSERT INTO table1 (username, firstname, lastname, image) 
SELECT ?, ?, ?, image FROM table2 t2 WHERE t2.image_id = ? 

第3 ?是你的束缚PARAMS - $username, $fname, $lname
t2.image_id = ?代表您所要的IMG的ID /唯一字段。

+0

where子句不适用于我.. – user2926655

+0

没关系..工作。谢谢 – user2926655