在一个查询中使用update和select子句

时间:2015-05-05 08:06:58

标签: mysql

我有两张桌子如下。

circle_user

user_id    circle_id     user_type_id
1            1              1
2            1              2
3            1              2
user_type
id    type
1     admin
2     member

我必须实施切换管理员概念。如果用户删除了他的帐户并离开了他的圈子,则必须为该圈子分配新的管理员。例如,在给定的circle_user表中,如果user_id = 1删除了他的帐户,则该圈子的下一个成员必须成为该圈子的管理员。 所以我需要一个查询,它将选择该圈子的下一个成员,并将user_type_id从2更新为1.

我需要一个类似的结果。

circle_user

user_id    circle_id     user_type_id
1            1              1
2            1              1
3            1              2

我如何在一个查询中执行此操作?我有circle_id = 1作为参数。

1 个答案:

答案 0 :(得分:0)

我不确定你究竟要求的是什么。但就像第一次迭代一样:

SELECT *
FROM   table a
WHERE  Type = 'PRO'
       AND NOT EXISTS(SELECT 1
                      FROM   table b
                      WHERE  a.ID = b.ID
                             AND LEFT(Type, 3) = 'TFS')