SQL兩個表查詢計算生成另一個表
uj5u.com熱心網友回復:
代碼怎么寫?uj5u.com熱心網友回復:
select 查出的列名 into 生成的表 from 表1 inner join 表2 on 關聯條件 where 條件uj5u.com熱心網友回復:
--測驗資料
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
*/
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/36274.html
標籤:疑難問題
上一篇:一天就20ip為何mysql頻繁崩潰?騰訊云2H4g5M
下一篇:直接插入排序
