2

私はこのようなクエリを書きたい:

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

実際、私は でクエリを取得したいと考えていますusersuname= test_credit. nameしかし、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 に答える