INSERT INTO ... SELECT和SELECT的UPDATE

时间:2012-02-29 05:00:38

标签: mysql insert

我正在使用MySQL的INSERT INTO...SELECT结构:

INSERT INTO some_table (col1, col2, col3)
   SELECT otbl.col4, obtl.col5, atbl.col6 FROM other_table otbl
   INNER JOIN another_table atbl
      ON atbl.id = otbl.some_id
   WHERE obtl.col7 = 0;

在同一个查询中,我想在col7 = 1匹配的任何地方“切换”SELECT。可能的?

2 个答案:

答案 0 :(得分:3)

我相信答案是。我想做类似的事情,比如在选择他们的详细信息时更新用户的登录时间。在您的情况下,您必须有两个查询,更新是第二个。如果您需要确保它们之间没有任何关系,请考虑交易。

答案 1 :(得分:1)

在other_table上创建一个触发器,如

other_table

CREATE TRIGGER other_Trigger
AFTER insert ON some_table
FOR EACH ROW
BEGIN
update other_table set col7=1 where some.id=new.id
END