mysql插入另一个查询的值

时间:2015-04-16 15:35:49

标签: mysql insert

我是PDO的新手,并尝试将查询结果插入表中。

$statement_count_laeufer = $dbh->query('SELECT COUNT(Laeufer_Nachname)+1 FROM tbl_Laeufer;');
$result_count_laeufer = $statement_count_laeufer->fetchALL(PDO::FETCH_CLASS);

这是我的查询,它计算表中列的条目,现在我想将结果用于INSERT INTO查询

$statement = $dbh->prepare("INSERT INTO tbl_Lauf (FK_ID_Veranstaltung, FK_ID_Laeufer) VALUES (".$_POST[event].",  ".$result_count_laeufer." ) 

当我打印/ echo $ statement_count_laeufer时它会显示我

Array ( [0] => stdClass Object ( [COUNT(Laeufer_Nachname)+1] => 2203 ) )

但我只是想使用2203。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

你应该能够做到这一点;

$statement = $dbh->prepare("INSERT INTO tbl_Lauf (FK_ID_Veranstaltung, FK_ID_Laeufer) VALUES (".$_POST[event].",  (SELECT COUNT(Laeufer_Nachname)+1 FROM tbl_Laeufer)";

Mysql允许您在select查询

中使用insert查询结果