我正在使用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
。可能的?
答案 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