2

我想写一个这样的查询:

UPDATE `test_credit` 
SET `test_credit`.`credit`=(`test_credit`.`credit`-((`test_credit`.`credit`/100)*5)) 
WHERE `test_credit`.`name` = `users`.`uname`

事实上,我想查询一下usersuname= test_creditname但是mysql说它有错误并意识到usersuname作为列

什么是正确的查询?

4

1 回答 1

4

您需要使用 table 显式加入它users。据我根据您的查询的理解,您想要计算两个表上credit是否names存在。

试试这个,

UPDATE  test_credit a
        INNER JOIN users b
            ON a.name = b.uname
SET     a.credit = (a.credit - ((a.credit/100) * 5.0)) 
-- WHERE  b.parent= "example"
于 2013-04-07T04:43:16.980 回答