我遇到了问题:我必须使用表examp1
和examp2
。我想复制examp1
id=138
的数据,并将其粘贴到examp2
的另一个表id=5
中。我试过这个
insert into examp1 (rates,publishPrice,name)
select rates,publishPrice,name from examp2 where id=138;
和
insert into examp1 (rates,publishPrice,name) where id=5
select rates,publishPrice,name from examp2 where id=138;`
但我在第二次查询中遇到问题。在第一个查询中,id = 138的数据被复制但不是特定的id。
答案 0 :(得分:2)
如果5
中不存在examp1
的ID,您可能需要:
insert into examp2(id, rates, publishPrice, name)
select 5, rates, publishPrice, name
from examp1
where id = 138;
如果id都存在,那么您需要更新:
update examp2 cross join
(select e1.*
from examp1 e1
where id = 138
) e1
on examp2.id = 5
set e2.rates = e1.rates,
e2.publishPrice = e1.publishPrice,
e2.name = e1.name;
或类似的东西,根据您的问题确实是什么。