我有两个名为 members 和 orders 的表。
成员表
订单表 在我的 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/