我正在尝试更新同一个表中相同列的表列。 这是代码(更新)
public function UpdateStockIn($id, $subUnitValue) {
$query = "UPDATE BRAND_LIST SET CURRENT_STOCK_BOTTLE = (SELECT CURRENT_STOCK_BOTTLE FROM BRAND_LIST WHERE ID = ?) + '.$subUnitValue.' WHERE ID = ? ";
$success = 0;
try {
$stmt = $this->conn->prepare($query);
$stmt->bindParam(1, $id);
$stmt->bindParam(2, $id);
$stmt->execute();
$success = 1;
} catch (PDOException $ex) {
echo $ex->getMessage();
}
return $success;
}
它显示这样的错误 您无法在FROM子句
中为更新指定目标表'BRAND_LIST'答案 0 :(得分:3)
尝试运行这2个sql,第一个将存储一个值到mysql本地变量然后用于第二个sql。
SELECT @old_subUnitValue := GROUP_CONCAT(table1.CURRENT_STOCK_BOTTLE) FROM BRAND_LIST AS table1 WHERE table1.ID=2;
UPDATE BRAND_LIST AS table2 SET table2.CURRENT_STOCK_BOTTLE = @old_subUnitValue + '.$subUnitValue.' WHERE table2.ID=2;
答案 1 :(得分:0)
使用以下查询
outp[k] = arr.copy()