Php 基于另一个表的字段的SQL更新查询

Php 基于另一个表的字段的SQL更新查询,php,mysql,sql,Php,Mysql,Sql,所以现在我正在使用PHP,我正在编写一个SQL查询。我基本上要做的是更新一个表,在另一个表中设置一个列为“yes”,其中uid column=value column,其中name='beta\u givebeta' 这很难理解。基本上是基于另一个表的字段值更新字段,但要查找另一个表的字段值,需要在另一个表中有一个WHERE语句,以便它选择正确的值 你很难理解,所以我为我写这篇文章的方式道歉 表users有两列,uid和beta。另一个表有两列,名称和值。我试图设置beta='yes',其中ui

所以现在我正在使用PHP,我正在编写一个SQL查询。我基本上要做的是更新一个表,在另一个表中设置一个列为“yes”,其中uid column=value column,其中name='beta\u givebeta'

这很难理解。基本上是基于另一个表的字段值更新字段,但要查找另一个表的字段值,需要在另一个表中有一个WHERE语句,以便它选择正确的值

你很难理解,所以我为我写这篇文章的方式道歉

表users有两列,uid和beta。另一个表有两列,名称和值。我试图设置beta='yes',其中uid=value,但第2列中的值必须是name=beta\u-beta

更新: 表1 t1_users=有两列为uid,表2 t2_settings=有两列为name和value

试图更新具有特定uid的beta字段,但特定uid基于表2中与name列匹配的特定行上的value字段

作为更新,这是我尝试过的查询:update t1\u users SET beta='yes',其中uid=value=SELECT value FROM t2\u settings,其中name='beta\u givebeta'

在MySQL中,可以使用join with update。我是这样理解你的问题的:

update t1_users u join
       t2_settings s
       on u.uid = s.value and s.name = 'beta_givebeta'
    set t1.beta = 'yes';

提供样本数据和期望的结果。不难理解,但在没有看到表格结构的情况下很难给出准确的答案。请包括这两个表的定义。如果有,请提供一个尝试。在这里提问之前,你真的应该尝试一下。请用一个可复制的例子进一步解释你的问题。