我想从其他表中选择一列并将其插入另一列。选择并插入mysql
我在表2中有名为image
的列,并且想要选择它并将下面的数据与表1一起插入。那可能吗?
$stmt = $mysqli->prepare("insert into table1 (username, firstname, lastname, image) ")
$stmt->bind_param('sss', $username, $fname, $lname);
$stmt->execute();
我想从其他表中选择一列并将其插入另一列。选择并插入mysql
我在表2中有名为image
的列,并且想要选择它并将下面的数据与表1一起插入。那可能吗?
$stmt = $mysqli->prepare("insert into table1 (username, firstname, lastname, image) ")
$stmt->bind_param('sss', $username, $fname, $lname);
$stmt->execute();
是的,这是可能的:
$stmt = $mysqli->prepare("
insert into table1 (username, firstname, lastname, image)
select ?,?,?,image from table2
");
...但我希望表2中只有一个行!
什么都没有插入。 – user2926655
那么也许'table2'是空的? – geomagas
你可以做一个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 /唯一字段。
where子句不适用于我.. – user2926655
没关系..工作。谢谢 – user2926655
table1和table2之间有任何关系吗? –
@JorgeCampos没有。 – user2926655
那你怎么知道从table2插入table1的图像是什么?在了解问题之前,伙计们发布了答案。这很尴尬:P –