问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sql如何判断相同的值但处于不同列的个数

发布网友 发布时间:2024-10-21 21:41

我来回答

2个回答

热心网友 时间:2024-11-09 09:05

--构造测试数据,假设你的表叫@t
declare @t table(A1 int ,B1 varchar(20),C1 varchar(20),D1 varchar(20))
declare @tb table(id int,val varchar(255),col varchar(255))
insert into @t
select 3, 'c' , 'd' , 'e'
union all
select 5 , 'd' , 'e' , 'c'
union all
select 6 , 'w' , 'c' , 'd'
union all
select 4 , 'c' , 'w' , 'd'
union all
select 8 , 'a' , 'w' , 'd'
--end of 构造测试数据
--(1)把原表@t添加流水号列插入临时表#t
select id = IDENTITY(int,1,1),*
INTO #t
from @t
--(2)把临时表#t中B1,C1,D1的各种组合加上流水号插入临时表@tb
insert into @tb
select id,B1+C1+D1,null
from #t
union all
select id,B1+D1+C1,null
from #t
union all
select id,C1+B1+D1,null
from #t
union all
select id,C1+D1+B1,null
from #t
union all
select id,D1+C1+B1,null
from #t
union all
select id,D1+B1+C1,null
from #t
--(3)把相同ID的各组合统一用最大的那个组合插入表@tb的列col中
update t
set col = x.skey
from (select id,max(val) as skey
from @tb
group by id
) x right join @tb t on x.id = t.id and val = skey

--(4)把更新后的@tb与原表@t关联然后分组,得到最终结果
select col as 相同数据,sum(A1) as 合计A1
from(select b.*,a.col
from @tb a inner join #t b
on a.id = b.id
where col is not null
) t
group by col
--删除临时表
DROP table #T

---当然也可以用游标,用游标思路就简单多了,每读取一条记录就和全部数据对比,不过可能效率的问题,这里没有用游标

热心网友 时间:2024-11-09 09:03

selct a.* from
(select sum(A1) A1,B1,C1,D1 from table1
group by B1,C1,D1) a,table1 b
where a.B=b.B1 and a.C1=b.C1 and a.D1=b.D1
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
石料加工服务可以全部交给第三人完成吗 山东沃尔德集团集团所辖公司介绍 齐鲁银行无忧贷和市民贷哪个好 什么叫补按揭 后按揭贷款什么意思 买房者续按揭有什么危害 加按揭是什么意思 八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 hp打印机一闪一闪不打印怎么回事? 惠普打印机不打印了是什么原因 求、珠海香洲区7路公交车时间表!~~~ 3a公交未班是几点 铜的沉淀是什么 ...怎么将查询出来的某列值相同的记录的另一列的值拼起来 求sql 语句怎... sql的sum问题,高手来 郑州市邮政局在哪? 某化学研究小组以铜为电极电解饱和食盐水,探究过程如下:【实验1... 亚铜离子铜离子如何转化 ...而后溶解,溶液呈蓝色。 向该aq中通入SO2气体后,又生成白色沉淀... EXCEL表格 里边前边的 0 打不上.. 如何在EXCEL中输入00000001? 暴走萌将bt版如何下载 肺癌的治疗方法 哪种好?捉急!! 暴走拼图暴走p图如何下载 昨天看了朋友的平板知道了暴走漫画,今天下了一个在自己手机上,但是觉 ... 张全蛋直播里说的那个动画是叫《暴走撸啊撸》吗? 上海火车站到闵行红梅路有12号线吗 木床哪种好? 2014年应届毕业生大学生支教报名是什么时候 有谁可以告诉我,大学生西部计划,北京的应届毕业生可以通过什么途径去... 大学生西部计划是只有毕业生才能报名吗?我是在校生,也就是还没毕业可 ... 大学生志愿服务西部计划服务年限 一般大学生西部计划要求几年为服务期满?能报考的?各个省有要求吗 为什么Z103没到菏泽,Z104 有 中国动漫如何品牌化,产业化 海乐园(株洲)动漫产业有限公司品牌介绍 如何把手机上支付宝绑定的银行账户删除 卡西龙动漫营销 costar动漫品牌Costar简介 广州艺洲人文化传播有限公司代理品牌介绍 红town定义 黑色的直筒裤如何搭配才能打造出时尚又不沉闷的造型? 四横四竖代表什么 叫字写美观的要领是:口部(),偏上写,四竖(折)匀,有收()怎么填 如何让自己更加快速的找到自己喜欢的内容? 四个竖道的车标 学习策略界定 如何教授学生学习策略?