2013-11-01 215 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