php - MySQL基于同一张表更新表

标签 php mysql

我遇到问题“您无法在 from 子句中指定要更新的目标表”。我知道这意味着什么,并且我找到了一些解决方案,但我的语法不起作用,所以我寻求帮助. 我要运行的查询是

("UPDATE people SET isAlive = '1' WHERE family = (SELECT family FROM people WHERE person = :person)")

我试过使用人作为 a 和第二人作为 b 但我只是在这一点上感到难过。

最佳答案

您可以通过重新连接该表来完成此操作:

UPDATE people p1 
join people p2 on p1.family=p2.family 
SET p1.isAlive = '1' 
where p2.person= :person

关于php - MySQL基于同一张表更新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26535286/

相关文章:

php - Composer 内存不足 - 需要替代方法来增加 PHP memory_limit

PHP mysqli子查询在读取const表后注意到不可能返回Impossible WHERE

php - WooCommerce 在计算总数之前四舍五入

PHP 按姓名和姓氏或中间名搜索

c# - 使用 MySql.Data.MySqlClient;不管用

php - 访问被拒绝 'sec_user' @'localhost'

mysql - 删除行时如何更新mysql中的索引

php - Echo json_encode 在某些情况下不起作用

mysql - 截断 SQL 字符值

mysql - 当文本以不同格式出现时,将文本转换为 float