我使用以下查询在表中插入值
INSERT INTO `tbl1` SELECT * FROM tbl2
这里的 tb1 是一个临时表。
现在,我想要这样的东西
UPDATE `my_table` SELECT * FROM tbl1
我知道更新的语法是 Update tbl SET cols = vals 但是我们可以有类似上面插入查询的东西吗?
谢谢。
你可以做Insert with Select
但不能Update with Select
。但仍然可以通过在UPDATE
.
UPDATE table1 t1 JOIN table2 t2 ON t1.id = t2.id
SET t1.col1 = t2.col2, t1.col2 = t2.col2
您可以使用多表语法加入您的tbl1
表:my_table
UPDATE
UPDATE my_table JOIN tbl1 ON ***join_condition***
SET my_table.foo = tbl1.bar, ...
你可以这样做:
update my_table join tbl1 on my_table.id = tbl1.id
set my_table.Vaal= tbl1.vaal