1

UPDATE statistics'
SET money = money + '$money'
WHERE member_id IN
((SELECT member_id FROM races WHERE l_id = '$mem_id'), $other_id)

那有什么问题?我想从比赛中检索所有 member_ids,还包括 member_id $other_id。没有 $other_id 它可以工作。

顺便说一句,它给了我“子查询返回超过 1 行”错误。

4

3 回答 3

7

尝试:

UPDATE statistics
   SET money = money + $money
 WHERE member_id IN (
       SELECT member_id
         FROM races
        WHERE l_id = $mem_id 
       )
    OR member_id = $other_id

和建议 -int类型列不要使用撇号。

于 2010-05-01T17:41:19.793 回答
4

子查询返回 member_id 和 $other_id

于 2010-05-01T17:40:50.497 回答
4

另一种方法:

(SELECT member_id FROM races WHERE l_id = '$mem_id'
UNION
SELECT $other_id)
于 2010-05-01T17:41:35.860 回答