php mysqli,如何选择值并准备它们以更新其他表

标签 php mysql mysqli

我有一个带有以下代码的 mysqli 查询:

    $stmt = $mysqli->prepare('SELECT `user`, `status` FROM `mytable1` WHERE `type`=?');
    $type = 1;
    $stmt->bind_param('i', $type);
    $stmt->execute();
    $stmt->bind_result($user, $status);
    $stmt->store_result();
    $stmt->fetch();
    $stmt->close();

我需要更新列“Money”,其中用户从“mytable1”输入“1”

$stmt = $mysqli->prepare('UPDATE `mytable2` SET `money`=100 WHERE `user`=?');
$stmt->bind_param('s', $user);
$stmt->execute();
$stmt->close();

这样就只更新一个用户。 我找到了 PHP 文档,但没有示例:(

最佳答案

也许是这样的组合查询:

UPDATE `mytable2` SET `money`=100 WHERE `user` in (
SELECT distinct `user` FROM `mytable1` WHERE `type`=?'
);

关于php mysqli,如何选择值并准备它们以更新其他表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34110922/

相关文章:

php - MySQLi real_connect 失败

php - timediff 不适用于 mysql 中的 date_format

php - 如何使 AJAX 使用 POST 而不是 GET

php - 在 laravel 中包含 css 文件的层次结构以避免 css 覆盖

php - 如何使用 PHP 和 fgetcsv 函数从 CSV 文件创建数组

java - MySQL或Tomcat日志查询

mysql - affected_rows 不适用于 Codeigniter 中的非默认数据库

java - 通过c3p0在mysql中查询超时

php - 对一个查询进行多项选择

php - 获取所选列的数据或内容