php - 通过外列更新 MySQL 查询

标签 php mysql sql

我有两个名为 members 和 orders 的表。

成员表 Members columns

订单表 Orders columns 在我的 php 代码中,我想根据 members_id 更新 Orders 表中的列,members_id 是成员 ID 表的外键。

我是这样说的:

$query = "UPDATE orders 
          SET package='$package', comments='$comments', refno='$refno', status='no'
          WHERE members_id.username='$username'";

我卡在了 WHERE 查询部分。

最佳答案

如果您需要根据用户名更新订单,您需要JOIN成员表:

UPDATE orders o
  INNER JOIN members m ON m.id = o.member_id
  SET o.package='$package', o.comments='$comments', o.refno='$refno', o.status='no'
  WHERE m.username='$username'

或者,首先获取适当的成员 ID - SELECT id FROM members WHERE username=...,然后在更新查询中使用它。

PS:不要忘记转义您放置在查询中的所有值。

关于php - 通过外列更新 MySQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11122265/

相关文章:

php - PHP中的curl_multi_exec

mysql - 获取多行MYSQL中的最后一个值

事务中的 MySQL 回滚

MYSQL:选择与同一集合生成的条件匹配的集合

php - 如何在 MediaWiki 中获取当前页面 URL

php - 导出到 excel 文件特定行记录

mysql - Libre Office Calc 数据范围源为空

mysql - 在 WHERE 子句中限制 SQL?

sql - 如何使用sql在数据 block 上创建带有嵌套 map 的表

php - 归一化表