下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、SQL Server数据库多表关联汇总查询是我们经常用到的,本文我们就介绍了一个多表关联汇总查 询的实例,通过这个实例在多表关联查询中遇到的问题以及它的解决方法让我们一起来了解一下SQL Server数据库多表关联汇总查询的相关知识吧SQL Server数据库多表关联汇总查询是我们经常用到的,本文我们就介绍了一个多表 关联汇总查询的实例,通过这个实例在多表关联查询中遇到的问题以及它的解决方法让我们 一起来了解一下SQL Server数据库多表关联汇总查询的相关知识吧,希望本次的介绍能够 对您有所帮助。以下是代码片段:select isnull(s.mnumber,ss.mnumber) mnu
2、mber,isnull(m.whcode,ss.whcode) whcode, isnull(sum(factreceiptquan),0)-isnull(sum(factissuequan),0) + sum(isnull(ss.quan,0) quan from (select * from gy_inoutmain where billcode in(T201,T202,T203,1204,T205,T206) m inner join gy_inoutsub s on m.inoutmainid=s.inoutmainid left join(select sms.mnumber,sm
3、.whcode,sum(sms.quan) quan from Kf_StartMain sminner join Kf_Startsub sms on sm.startmainid=sms.startmainidgroup by sm.whcode,sms.mnumber)ss on m.whcode=ss.whcode and s.mnumber=ss.mnumbergroup by isnull(m.whcode,ss.whcode),isnull(s.mnumber,ss.mnumber) order by s.mnumber上面将收发表的数量进行汇总,然后再加上期初表的数量,得到库存
4、量。但是得到的实 际数量却多出很多来,比如本来物料“010101004只有20吨,统计的结果却有5000多吨。问题出在哪里呢?以下是代码片段:select sms.mnumber,sm.whcode,sum(sms.quan) quan from Kf_StartMain sm inner join Kf_Startsub sms on sm.startmainid=sms.startmainid where sms.mnumber=010101004 group by sm.whcode,sms.mnumber上面sql统计期初表数量=31.500000以下是代码片段:select s.mn
5、umber,m.whcode, isnull(sum(factreceiptquan),0)-isnull(sum(factissuequan),0) quanfrom (select * from gy_inoutmain where billcode in(T201,T202,T203,1204,T205,T206) minner join gy_inoutsub s on m.inoutmainid=s.inoutmainidwhere s.mnumber=010101004 group by m.whcode,s.mnumberorder by s.mnumber上面sql统计收发表数
6、量=-27.000000以下是代码片段:select s.mnumber,m.whcode,isnull(sum(factreceiptquan),0)-isnull(sum(factissuequan),0) +sum(ss.quan) quanfrom (select * from gy_inoutmain where billcode in(T201,T202,T203,1204,T205,T206) minner join gy_inoutsub s on m.inoutmainid=s.inoutmainidleft join(select sms.mnumber,sm.whcode
7、,sum(sms.quan) quan from Kf_StartMain sminner join Kf_Startsub sms on sm.startmainid=sms.startmainidwhere sms.mnumber=010101004 group by sm.whcode,sms.mnumber)ss on m.whcode=ss.whcode and s.mnumber=ss.mnumberwhere s.mnumber=010101004 group by m.whcode,s.mnumberorder by s.mnumber上面sql关联两表,数量=57145.50
8、0000,原来,在收发表关联期初表,收发表有几 百条记录,而期初表只有一条记录,两者一关联,则这几百条记录都有期初数,结果期初 数被累加了几百次。举个例子:以下是代码片段:create table 期初表(MNUmber varchar(10),quan decimal(10,3)create table 收发表(MNUmber varchar(10),quan decimal(10,3)insert into 期初表values(001,7)insert into 期初表values(001,5)insert into 期初表values(001,-9)insert into 收发表values(001,10)select sum(quan) from期初表-期初表合计=3那得到的现存量应该是收发表的合计加上期初数:3+10 = 13。但一关联,再汇总, 就出问题了。以下是代码片段:select sum(m.Quan)+sum(s.Quan) from 收发表minner join 期初表s on m.MNumber=s.MNumbergroup by m.MNumber得到的结果是33。因为一关联,就变成:以下是代码片段:收发表.MNumber收发表.quan期初表.MN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026食品添加剂行业竞争态势分析及新材料应用研究
- 2026人工智能伦理风险评估及数据治理体系建设规划分析研究报告
- 2026汽车后市场全面研究及行业竞争布局与发展趋势分析报告书
- 2026能源建材行业市场供需分析及投资评估规划分析研究报告
- 2026韶关有色金属行业市场现状供需分析及投资评估规划分析研究报告
- 2026中国体育公益事业发展现状与社会影响力评估研究报告
- 注册核安全工程师综合试题(含解析)
- 2026汽车零部件升级改造商行业市场发展策略研究与发展规划
- 2026农业物联网行业市场竞争格局及投资决策评估报告
- 跨国合并中跨国To ken合并后绿电权益继承-基于国际数字资产合并框架算力To ken合并绿电权益追溯继承规则规范分析
- DZ/T 0275.3-2015岩矿鉴定技术规范第3部分:矿石光片制样
- 医疗机构中医护理门诊建设规范
- 富滇银行笔试题库及答案
- 药品记录与数据管理要求试行解读
- T-SDLPA 0001-2024 研究型病房建设和配置标准
- 沪教版九年级上册化学第3章《物质构成的奥秘》知识点讲义
- 2021输变电工程监理费计列指导意见
- GB/T 34590.2-2022道路车辆功能安全第2部分:功能安全管理
- 2022年芜湖繁昌区国企招聘考试真题及答案
- YS/T 357-2015乙硫氨酯
- 第3章目标与环境辐射及其工程计算
评论
0/150
提交评论