除了我想要从 $_POST["user"]
插入值的一个字段之外,有什么方法可以插入 select 语句中的大部分值吗?我需要两个查询才能执行此操作吗?
$sql = "INSERT INTO `TAB1` (name,category, brand, image_url,big_img)
SELECT a.name,b.category, b.brand, a.image_url,a.big_img
FROM `mTaB2` a INNER JOIN `mTab3` b
ON a.tid = b.id
WHERE a.id = ?
";
$users = $dbh->prepare($sql);
$users->bindValue(1, $_POST["id"]);
$result = $users->execute();
...............
$sql = "INSERT INTO `TAB1` (user)
VALUES(?)
";
$users = $dbh->prepare($sql);
$users->bindValue(1, $_POST["user"]);
$result = $users->execute();
最佳答案
我认为这样的事情会起作用:
$sql = "INSERT INTO `TAB1`(user, name, category, brand, image_url, big_img)
SELECT ?, a.name, b.category, b.brand, a.image_url, a.big_img
FROM `mTaB2` a INNER JOIN `mTab3` b
ON a.tid = b.id
WHERE a.id = ?
";
$users = $dbh->prepare($sql);
$users->bindValue(1, $_POST["user"]);
$users->bindValue(2, $_POST["id"]);
关于mysql - INSERT INTO 从 select 语句中删除 mysql 中的一个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25350687/