MySQL社区

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
查看: 2060|回复: 2
打印 上一主题 下一主题

[SQL类] 一个很复杂的查询,CSDN那边都发了一个多月了没人能解决

[复制链接]
跳转到指定楼层
1#
发表于 2016-10-18 16:32:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
很复杂的查询,我尽量说的清楚一些,不清楚的再补充。


一个表wtqd是机构问题清单表,主要字段有
zhh,机构号共12个机构,
zhm  机构名称,与机构号对应
wtlx, 问题类型分为一般、严重、规范、建议,
jcjd, 检查季度,即在哪个季度检查发现的问题。

每个问题一条记录。

第二个表PZL是机构的凭证数量,主要字段有
zhh 机构号,同一表
pzl 凭证量
jzrq 截止季度,固定格式为2016二季度这样的,即某年一季度,某年二季度...这样,与PZL字段结合,即某年一季度多少凭证量,某年二季度多少凭证量。

通过以上两表要实现的查询结果为下表:
zhh 机构号  
zhm 机构名称   
yz 严重问题数量  
yb 一般数量  
gf 规范数量  
jy 建议数量  
khwtzl 问题总量 
pzl 凭证量  
ndjd 年度季度,这个要根据查询页选择的不同实现查询,比如全部、2016年二季度、2016年全年,wtqd表中jcjd字段,pzl表中jzrq字段对应该查询条件。
wtl 问题率即问题总量/凭证量  
pm 12个机构的问题率排名,1、2、3、4、5、。……

已经纠结了半个多月了一直没有解决,目前的想法是,建议以上的查询结果表,通过对wtqd  pzl两表的分步查询更新查询结果表。再查询结果表显示网页。

求高手赐教。不胜感激。如有具体查询语句最好,如无语句,提供解决方法或思路,也不胜感谢


问题清单表(wtqd)               
字段        类型        字段说明
wtid        int(8)        ID
fhm        varchar(12)        一级公司名
zhh        varchar(9)        二级公司号
wdh        int(9)        三级公司号
wdm        varchar(30)        三级公司名
wtms        varchar(636)问题描述
wtdx        varchar(12)        问题定性,分为严重、一般、规范、建议
jcjd        varchar(16)        检查季度,如2016年二季度,2015年一季度等

凭证量表(pzl)               
字段        类型        字段说明
zhh        int(9)        二级公司号
wdh        int(9)        三级公司号
jzrq        varchar(8)        截止季度,如2016年二季度,2015年一季度等,与问题清单jcjd字段对应
pzl        int(11)        凭证量

要得到这样的报表                                                               
http://1rmb.net/33.png


求助高手,我的QQ及微信号15598929,如贴子里说不清楚,可以加我,也可以留一下您的QQ,远程指导我一下,万分感谢

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享淘帖 顶 踩
2#
发表于 2016-10-27 14:09:32 | 只看该作者
建议思路:
1.创建问题清单表和凭证量表的中间表。
2.问题清单表和凭证量表的相关汇总信息先更新到中间表。
3.中间表再更新到目标表(即报表的最终展现表)。

3#
发表于 2017-4-6 17:37:22 | 只看该作者
不难啊,这里需要用到存储过程,因为web页面要传参数进来,要用到动态语句
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|申请友链|小黑屋|Archiver|手机版|MySQL社区 ( 京ICP备07012489号   
联系人:周生; 联系电话:13911732319

GMT+8, 2024-4-25 21:50 , Processed in 0.072163 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表