mysql 数据库 如何用sql语句查询数据后再插入本表?

mysql 数据库 如何用sql语句查询数据后再插入本表?,第1张

你好,很高兴回答你的问题。

我理解你的这个需求可以用下面的语句实现。

insert into table_a (m) select 'efg' as m from table_a where m='abc'

其他字段自行补一下。

如果主键不是自增的话,还需要考虑下主键值。

如果有帮助到你,请点击采纳。

可以用两表的查询结果集做为一个虚拟表(为其取一个表别名),然后再用该虚拟表与另一张表实施连接查询即可。请参考以下例子:

假设有三张表

1)商品表(商品ID,商品名称)

2)入库表(商品ID,入库数量,入库时间)

3)出库表(商品ID,出库数量,出库时间)

要求列出所有商品名称、商品ID及其当前库存余额

SQL查询语句如下:

select 商品表.商品名称,商品表.商品ID,b.库存余额

from 商品表 left join

(select a.商品ID,sum(a.数量)as 库存余额 from

(select 商品ID,入库数量 as 数量 from 入库表 union all

select 商品ID,-1*出库数量 from 出库表) a group by a.商品ID) b

on 商品表.商品ID=b.商品ID

-- 说明上述语句中的“a”和“b”分别是两个中间过渡查询结果集取的表别名,也就所谓的虚拟表。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11863875.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存