我知道你可以在SELECT上加入语句,
但您是否也可以使用UPDATE,INSERT和DELETE语句进行连接,以便多个表中的行都被删除/更新/插入,如果它们相互链接并且它们满足WHERE语句...
这也适用于LEFT JOIN,RIGHT JOINS,JOINS和INNER JOIN吗?
答案 0 :(得分:0)
您可以在更新/插入/删除时进行连接,但不能更新这些连接表中的记录。您需要单独更新每个表。
答案 1 :(得分:0)
您可以使用触发器执行此操作
DELIMITER $$
CREATE TRIGGER au_table1_each AFTER UPDATE ON table1 FOR EACH ROW
BEGIN
UPDATE table2 SET fieldY = new.fieldX WHERE ...;
END $$
DELIMITER ;
触发器将使用table1中的一些新数据触发每次更新和更新table2
触发器BEFORE
和AFTER
是一个操作,可以是UPDATE
,INSERT
或DELETE
请参阅:http://dev.mysql.com/doc/refman/5.1/en/create-trigger.html
并且:http://www.databasedesign-resource.com/mysql-triggers.html