select D.ZDH,D.CH,A.YHMC,A.SYSID,A.YHDZ,A.DAH,B.ZBWZ,B.T_YHDAB_SYSID,B.CH,C.T_YHSBXXB_SYSID,C.CBYF,C.SYDS,C.BYDS,C.BYYSL,c.CBNF,C.ZSF from T_YHDAB a,T_YHSBXXB b,T_CBJLB c,T_BCXXB D where a.sysid=b.T_YHDAB_SYSID AND b.sysid=c.T_YHSBXXB_SYSID AND D.CH=B.CH
ZDH CH YHMC SYSID YHDZ DAH YHDAB_SYSID CH T_YHSBXXB_SYSID CBYF SYDS BYDS BYYSL CBNF ZSF
台江所 206015 林鸿斌 YH00000006 NULL 2030011981 YH00000006 206015 YH00000007 200810 0 000091.0 91 2008 227.5000
台江所 206015 谢艳滨 YH00000005 公司 2030011980 YH00000005 206015 YH00000006 200810 0 000110.0 110 2008 275.0000
台江所 206015 郭廷斌 YH00000002 公司 2030011973 YH00000002 206015 YH00000012 200810 0 000084.0 0 2008 588.0000
台江所 206015 郭廷斌 YH00000002 公司 2030011973 YH00000002 206015 YH00000003 200810 0 000084.0 168 2008 588.0000
台江所 206015 张建松 YH00000008 公司 2030011977 YH00000008 206015 YH00000015 200810 0 000037.0 37 2008 100.5290
台江所 206015 林鸿斌 YH00000006 公司 2030011981 YH00000006 206015 YH00000016 200810 0 000091.0 91 2008 227.5000
台江所 206015 林金铭 YH00000007 公司 2030011979 YH00000007 206015 YH00000014 200810 0 000016.0 0 2008 58.8000
台江所 206015 林金铭 YH00000007 公司 2030011979 YH00000007 206015 YH00000008 200810 0 000016.0 32 2008 58.8000
台江所 206015 王其华 YH00000003 公司 2030011983 YH00000003 206015 YH00000010 200810 0 000090.0 90 2008 315.0000
台江所 206015 张建松 YH00000008 公司 2030011977 YH00000008 206015 YH00000009 200810 0 000037.0 37 2008 100.5290
台江所 206015 林国华 YH00000004 公司 2030011982 YH00000004 206015 YH00000005 200810 0 000032.0 32 2008 NULL 我想把上面的SQL语句改一下效果如下: 就是把DAH这个字段值相同的ZSF字段值相加。BYYSL字段值相加 ZDH CH YHMC SYSID YHDZ DAH YHDAB_SYSID CH T_YHSBXXB_SYSID CBYF SYDS BYDS BYYSL CBNF ZSF
台江所 206015 林鸿斌 YH00000006 NULL 2030011981 YH00000006 206015 YH00000007 200810 0 000091.0 91 2008 227.5000
台江所 206015 谢艳滨 YH00000005 公司 2030011980 YH00000005 206015 YH00000006 200810 0 000110.0 110 2008 275.0000
台江所 206015 郭廷斌 YH00000002 公司 2030011973 YH00000002 206015 YH00000012 200810 0 000084.0 0 2008 0.0000
台江所 206015 郭廷斌 YH00000002 公司 2030011973 YH00000002 206015 YH00000003 200810 0 000084.0 168 2008 1176.0000
台江所 206015 张建松 YH00000008 公司 2030011977 YH00000008 206015 YH00000015 200810 0 000037.0 37 2008 100.5290
台江所 206015 林鸿斌 YH00000006 公司 2030011981 YH00000006 206015 YH00000016 200810 0 000091.0 91 2008 227.5000
台江所 206015 林金铭 YH00000007 公司 2030011979 YH00000007 206015 YH00000014 200810 0 000016.0 0 2008 0.0000
台江所 206015 林金铭 YH00000007 公司 2030011979 YH00000007 206015 YH00000008 200810 0 000016.0 32 2008 117.6000
台江所 206015 王其华 YH00000003 公司 2030011983 YH00000003 206015 YH00000010 200810 0 000090.0 90 2008 315.0000
台江所 206015 张建松 YH00000008 公司 2030011977 YH00000008 206015 YH00000009 200810 0 000037.0 37 2008 100.5290
台江所 206015 林国华 YH00000004 公司 2030011982 YH00000004 206015 YH00000005 200810 0 000032.0 32 2008 NULL
ZDH CH YHMC SYSID YHDZ DAH YHDAB_SYSID CH T_YHSBXXB_SYSID CBYF SYDS BYDS BYYSL CBNF ZSF
台江所 206015 林鸿斌 YH00000006 NULL 2030011981 YH00000006 206015 YH00000007 200810 0 000091.0 91 2008 227.5000
台江所 206015 谢艳滨 YH00000005 公司 2030011980 YH00000005 206015 YH00000006 200810 0 000110.0 110 2008 275.0000
台江所 206015 郭廷斌 YH00000002 公司 2030011973 YH00000002 206015 YH00000012 200810 0 000084.0 0 2008 588.0000
台江所 206015 郭廷斌 YH00000002 公司 2030011973 YH00000002 206015 YH00000003 200810 0 000084.0 168 2008 588.0000
台江所 206015 张建松 YH00000008 公司 2030011977 YH00000008 206015 YH00000015 200810 0 000037.0 37 2008 100.5290
台江所 206015 林鸿斌 YH00000006 公司 2030011981 YH00000006 206015 YH00000016 200810 0 000091.0 91 2008 227.5000
台江所 206015 林金铭 YH00000007 公司 2030011979 YH00000007 206015 YH00000014 200810 0 000016.0 0 2008 58.8000
台江所 206015 林金铭 YH00000007 公司 2030011979 YH00000007 206015 YH00000008 200810 0 000016.0 32 2008 58.8000
台江所 206015 王其华 YH00000003 公司 2030011983 YH00000003 206015 YH00000010 200810 0 000090.0 90 2008 315.0000
台江所 206015 张建松 YH00000008 公司 2030011977 YH00000008 206015 YH00000009 200810 0 000037.0 37 2008 100.5290
台江所 206015 林国华 YH00000004 公司 2030011982 YH00000004 206015 YH00000005 200810 0 000032.0 32 2008 NULL 我想把上面的SQL语句改一下效果如下: 就是把DAH这个字段值相同的ZSF字段值相加。BYYSL字段值相加 ZDH CH YHMC SYSID YHDZ DAH YHDAB_SYSID CH T_YHSBXXB_SYSID CBYF SYDS BYDS BYYSL CBNF ZSF
台江所 206015 林鸿斌 YH00000006 NULL 2030011981 YH00000006 206015 YH00000007 200810 0 000091.0 91 2008 227.5000
台江所 206015 谢艳滨 YH00000005 公司 2030011980 YH00000005 206015 YH00000006 200810 0 000110.0 110 2008 275.0000
台江所 206015 郭廷斌 YH00000002 公司 2030011973 YH00000002 206015 YH00000012 200810 0 000084.0 0 2008 0.0000
台江所 206015 郭廷斌 YH00000002 公司 2030011973 YH00000002 206015 YH00000003 200810 0 000084.0 168 2008 1176.0000
台江所 206015 张建松 YH00000008 公司 2030011977 YH00000008 206015 YH00000015 200810 0 000037.0 37 2008 100.5290
台江所 206015 林鸿斌 YH00000006 公司 2030011981 YH00000006 206015 YH00000016 200810 0 000091.0 91 2008 227.5000
台江所 206015 林金铭 YH00000007 公司 2030011979 YH00000007 206015 YH00000014 200810 0 000016.0 0 2008 0.0000
台江所 206015 林金铭 YH00000007 公司 2030011979 YH00000007 206015 YH00000008 200810 0 000016.0 32 2008 117.6000
台江所 206015 王其华 YH00000003 公司 2030011983 YH00000003 206015 YH00000010 200810 0 000090.0 90 2008 315.0000
台江所 206015 张建松 YH00000008 公司 2030011977 YH00000008 206015 YH00000009 200810 0 000037.0 37 2008 100.5290
台江所 206015 林国华 YH00000004 公司 2030011982 YH00000004 206015 YH00000005 200810 0 000032.0 32 2008 NULL
解决方案 »
- 【求助】在java中访问SQL Server数据库,出现这样的错误,是怎么回事
- 请大家帮个忙好吗?SQL中的查询删除记录
- CSON_CSON大侠,谢谢您上次回复,我又给hkb加了一个sj(水价),出了点问题,帮我好么?
- 我在做视图时需要链接远程数据,怎么办??
- 题库的数据库设计
- 问题:把当前登陆用户的用户名设为字段的默认值
- sqlserver2000简体中文企业版支持支持Intel® 安腾64位计算机吗?
- 我有一个存储过程,如何能将存储过程的查询结果保存成表,有分赠送
- when a data file corrupted,
- 循环能不能用事务???
- sql 统计问题
- 求关于统计的SQL语句
D.CH,
A.YHMC,
A.SYSID,
A.YHDZ,
A.DAH,
B.ZBWZ,
B.T_YHDAB_SYSID,
B.CH,
C.T_YHSBXXB_SYSID,
C.CBYF,
C.SYDS,
C.BYDS,
E.BYYSL,
c.CBNF,
E.ZSF
from T_YHDAB a,
T_YHSBXXB b,
T_CBJLB c,
T_BCXXB D,
(select A.DAH,
sum(isnull(C.BYYSL,0) As BYYSL,
sum(isnull(C.ZSF,0) AS ZSF
from T_YHDAB a,
T_YHSBXXB b,
T_CBJLB c
where a.sysid=b.T_YHDAB_SYSID
AND b.sysid=c.T_YHSBXXB_SYSID
) AS E
where a.sysid=b.T_YHDAB_SYSID
AND b.sysid=c.T_YHSBXXB_SYSID
AND D.CH=B.CH
and E.DAH=A.DAH
--> --> (让你望见影子的墙)生成測試數據
if not object_id('tb') is null
drop table tb
Go
Create table tb([ZDH] nvarchar(3),[CH1] int,[YHMC] nvarchar(3),[SYSID] nvarchar(10),[YHDZ] nvarchar(2),[DAH] int,[YHDAB_SYSID] nvarchar(10),[CH2] int,[T_YHSBXXB_SYSID] nvarchar(10),[CBYF] Datetime,[SYDS] int,[BYDS] nvarchar(8),[BYYSL] int,[CBNF] Datetime,[ZSF] decimal(18,4))
Insert tb
select N'台江所',206015,N'林鸿斌',N'YH00000006',null,2030011981,N'YH00000006',206015,N'YH00000007','200810',0,N'000091.0',91,'2008',227.5000 union all
select N'台江所',206015,N'谢艳滨',N'YH00000005',N'公司',2030011980,N'YH00000005',206015,N'YH00000006','200810',0,N'000110.0',110,'2008',275.0000 union all
select N'台江所',206015,N'郭廷斌',N'YH00000002',N'公司',2030011973,N'YH00000002',206015,N'YH00000012','200810',0,N'000084.0',84,'2008',588.0000 union all
select N'台江所',206015,N'郭廷斌',N'YH00000002',N'公司',2030011973,N'YH00000002',206015,N'YH00000003','200810',0,N'000084.0',84,'2008',588.0000 union all
select N'台江所',206015,N'张建松',N'YH00000008',N'公司',2030011977,N'YH00000008',206015,N'YH00000015','200810',0,N'000037.0',37,'2008',100.5290 union all
select N'台江所',206015,N'林鸿斌',N'YH00000006',N'公司',2030011981,N'YH00000006',206015,N'YH00000016','200810',0,N'000091.0',91,'2008',227.5000 union all
select N'台江所',206015,N'林金铭',N'YH00000007',N'公司',2030011979,N'YH00000007',206015,N'YH00000014','200810',0,N'000016.0',16,'2008',58.8000 union all
select N'台江所',206015,N'林金铭',N'YH00000007',N'公司',2030011979,N'YH00000007',206015,N'YH00000008','200810',0,N'000016.0',16,'2008',58.8000 union all
select N'台江所',206015,N'王其华',N'YH00000003',N'公司',2030011983,N'YH00000003',206015,N'YH00000010','200810',0,N'000090.0',90,'2008',315.0000 union all
select N'台江所',206015,N'张建松',N'YH00000008',N'公司',2030011977,N'YH00000008',206015,N'YH00000009','200810',0,N'000037.0',37,'2008',100.5290 union all
select N'台江所',206015,N'林国华',N'YH00000004',N'公司',2030011982,N'YH00000004',206015,N'YH00000005','200810',0,N'000032.0',32,'2008',null
Go
Select * from tb
order by dahselect zdh,ch1,YHMC,sysid,yhdz,DAH,YHDAB_SYSID,CH2,T_YHSBXXB_SYSID,CBYF,SYDS,BYDS,
BYYSL=case when T_YHSBXXB_SYSID = (select min (T_YHSBXXB_SYSID)from tb where dah =t.dah) then (select sum(byysl) from tb where dah =t.dah) else 0 end,
CBNF,
ZSF =case when T_YHSBXXB_SYSID = (select min (T_YHSBXXB_SYSID)from tb where dah =t.dah) then (select sum(zsf) from tb where dah =t.dah) else 0 end
from tb t
order by dah这个是以你的数据为一张表来写的。台江所 206015 郭廷斌 YH00000002 公司 2030011973 YH00000002 206015 YH00000012 2020-08-10 00:00:00.000 0 000084.0 0 2008-01-01 00:00:00.000 .0000
台江所 206015 郭廷斌 YH00000002 公司 2030011973 YH00000002 206015 YH00000003 2020-08-10 00:00:00.000 0 000084.0 168 2008-01-01 00:00:00.000 1176.0000
台江所 206015 张建松 YH00000008 公司 2030011977 YH00000008 206015 YH00000015 2020-08-10 00:00:00.000 0 000037.0 0 2008-01-01 00:00:00.000 .0000
台江所 206015 张建松 YH00000008 公司 2030011977 YH00000008 206015 YH00000009 2020-08-10 00:00:00.000 0 000037.0 74 2008-01-01 00:00:00.000 201.0580
台江所 206015 林金铭 YH00000007 公司 2030011979 YH00000007 206015 YH00000014 2020-08-10 00:00:00.000 0 000016.0 0 2008-01-01 00:00:00.000 .0000
台江所 206015 林金铭 YH00000007 公司 2030011979 YH00000007 206015 YH00000008 2020-08-10 00:00:00.000 0 000016.0 32 2008-01-01 00:00:00.000 117.6000
台江所 206015 谢艳滨 YH00000005 公司 2030011980 YH00000005 206015 YH00000006 2020-08-10 00:00:00.000 0 000110.0 110 2008-01-01 00:00:00.000 275.0000
台江所 206015 林鸿斌 YH00000006 NULL 2030011981 YH00000006 206015 YH00000007 2020-08-10 00:00:00.000 0 000091.0 182 2008-01-01 00:00:00.000 455.0000
台江所 206015 林鸿斌 YH00000006 公司 2030011981 YH00000006 206015 YH00000016 2020-08-10 00:00:00.000 0 000091.0 0 2008-01-01 00:00:00.000 .0000
台江所 206015 林国华 YH00000004 公司 2030011982 YH00000004 206015 YH00000005 2020-08-10 00:00:00.000 0 000032.0 32 2008-01-01 00:00:00.000 NULL
台江所 206015 王其华 YH00000003 公司 2030011983 YH00000003 206015 YH00000010 2020-08-10 00:00:00.000 0 000090.0 90 2008-01-01 00:00:00.000 315.0000