求高手帮忙!!如何将数据库多表满足条件的记录单独插入到一个新表中?
例:表A数据如下a_name(名字)a_price(价格)萝卜5香蕉4梨2表B数据如下b_name(名字)b_price(价格)苹果6西瓜2芒果5这个时候我需将两个表中金...
例:表A数据如下
a_name(名字) a_price(价格)
萝卜 5
香蕉 4
梨 2
表B数据如下
b_name(名字) b_price(价格)
苹果 6
西瓜 2
芒果 5
这个时候我需将两个表中金额相加等于10的记录插入到表C中去,C的结构与表A,B一致
我这样子写了一条语句,但不对
insert into C(name,price) select top 1 * from A,B where(A.a_price+B.b_price=10)
单独执行了select top 1 * from A,B where(A.a_price+B.b_price=10) 这部分语句,
结果为A.a_name A.a_price B.b_name B.b_price
萝卜 5 芒果 5
返回的结果为一条记录,与表C的结构不一致,所以报错,
我需要将这一条记录分成两条插入的表C中去,如何写?
表C中最终结果应该为这样
name price
萝卜 5
芒果 5
水平有限,请高手帮忙,万分感谢!! 展开
a_name(名字) a_price(价格)
萝卜 5
香蕉 4
梨 2
表B数据如下
b_name(名字) b_price(价格)
苹果 6
西瓜 2
芒果 5
这个时候我需将两个表中金额相加等于10的记录插入到表C中去,C的结构与表A,B一致
我这样子写了一条语句,但不对
insert into C(name,price) select top 1 * from A,B where(A.a_price+B.b_price=10)
单独执行了select top 1 * from A,B where(A.a_price+B.b_price=10) 这部分语句,
结果为A.a_name A.a_price B.b_name B.b_price
萝卜 5 芒果 5
返回的结果为一条记录,与表C的结构不一致,所以报错,
我需要将这一条记录分成两条插入的表C中去,如何写?
表C中最终结果应该为这样
name price
萝卜 5
芒果 5
水平有限,请高手帮忙,万分感谢!! 展开
1个回答
展开全部
其实你已经接近了,这么写试一试:
select a_name as name,a_price as price from (select top 1 * from A,B where(A.a_price+B.b_price=10)) union select b_name as name,b_price as price from (select top 1 * from A,B where(A.a_price+B.b_price=10))
也就是关岩模键的union 得到了结果后分别把兄历a的name price和b的name price 取出来合并成一张表
如果我的语句有问题的话,可能是sql的版本问题粗尘缓,你可以参考一下帮助文件里的union
select a_name as name,a_price as price from (select top 1 * from A,B where(A.a_price+B.b_price=10)) union select b_name as name,b_price as price from (select top 1 * from A,B where(A.a_price+B.b_price=10))
也就是关岩模键的union 得到了结果后分别把兄历a的name price和b的name price 取出来合并成一张表
如果我的语句有问题的话,可能是sql的版本问题粗尘缓,你可以参考一下帮助文件里的union
壹寰(深圳)科技文化有限公司
2021-03-27 广告
2021-03-27 广告
要找正规专业的公司,行业口碑也比较重要。更多详尽准确的信息可以找壹寰(深圳)科技文化有限公司。91数据恢复是壹寰(深圳)科技文化有限公司旗下专业数据恢复品牌,91数据恢复专注于勒索病毒数据恢复、勒索病毒数据修复、数据库修复、数据库解密恢复、...
点击进入详情页
本回答由壹寰(深圳)科技文化有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询