SQL两个表查询计算生成另一个表

Mqs15802245582 2019-05-06 11:11:48
SQL两个表查询计算生成另一个表
...全文
253 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
XXXXn帅气 2020-05-04
  • 打赏
  • 举报
回复
--测试数据
select* into #表一 from (select 1 as 设备号,20 钱数,'现金充值' 结算方式 union all
						select 1 as 设备号,30 钱数,'开卡押金' 结算方式 union all  
						select 1 as 设备号,40 钱数,'现金消费' 结算方式 union all 
						select 2 as 设备号,50 钱数,'计时结算' 结算方式 union all 
						select 2 as 设备号,60 钱数,'现金充值' 结算方式 union all 
						select 3 as 设备号,70 钱数,'现金充值' 结算方式 union all 
						select 3 as 设备号,80 钱数,'现金充值' 结算方式)as a

select * into #表二 from (select 1 as 设备号,20 余额,20 押金 union all
						select 2 as 设备号,20 余额,20 押金 union all
						select 3 as 设备号,20 余额,20 押金) as a
--
select a.设备号,a.现金充值,a.开卡押金,isnull(a.计时结算,0)+isnull(a.现金消费,0)as '现金消费+计时结算',b.押金,b.余额 from 
( select * from #表一 as a pivot(sum(钱数) for a.结算方式 in(现金充值,开卡押金,现金消费,计时结算))as b) a join #表二 b on a.设备号=b.设备号

/*结果
1	20	30	40	20	20
2	60	NULL	50	20	20
3	150	NULL	0	20	20
*/
Mqs15802245582 2019-05-06
  • 打赏
  • 举报
回复
代码怎么写?
q159846 2019-05-06
  • 打赏
  • 举报
回复
select 查出的列名 into 生成的表 from 表1 inner join 表2 on 关联条件 where 条件

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧