[原]做报表,写Sql语句的一点收获
2008-10-30 14:37
295 查看
Sql语句一直是弱项,最近整报表可是痛苦呀,一个select能写两天。
整理一下一些常用的函数和写法放在这,以后忘了来看看,呵呵(针对Oracle数据库)。
例子都是生产中的例子,直接放上来保存着,后面要用的时候,我就直接复制过去用了,看起来比较费劲,例子大家还是不要看了。
一、递归查询
Start with...Connect By,用于对一个树形结构的表递归遍历,Start with后面跟初始值,Connect By后面跟遍历条件。
比如:
Decode 例子
SELECT A.WELL_COMMON_NAME,
TO_CHAR(B.PROD_DATE, 'YYYYMMDD'),
C.PUMP_JACK_WORKING_TIME,
decode(d.OIL_PROD_METHOD,
'1A',
D.UP_CURRENT || '/' || D.DOWN_CURRENT,
d.ELEC_PUMP_CURRENT_A) dl,
from CD_WELL_SOURCE a,
PC_DEV_WELL_ATTR b,
PC_PRO_WELL_VOL_DAILY c,
PC_PRO_WELL_STATUS_DAILY d,
TEMP_WELL_MECH_ALL e
where c.Well_Id = a.Well_Id(+)
and c.well_id = b.well_id(+)
and c.well_id = d.well_id(+)
and c.prod_date = d.prod_date(+)
and c.prod_date = to_date('20081015', 'yyyyMMdd')
AND c.well_id = e.well_id(+)
AND c.prod_date = e.test_date(+)
and a.Org_Id in ({OrgList})
order by c.well_id, c.prod_date
整理一下一些常用的函数和写法放在这,以后忘了来看看,呵呵(针对Oracle数据库)。
例子都是生产中的例子,直接放上来保存着,后面要用的时候,我就直接复制过去用了,看起来比较费劲,例子大家还是不要看了。
一、递归查询
Start with...Connect By,用于对一个树形结构的表递归遍历,Start with后面跟初始值,Connect By后面跟遍历条件。
比如:
Decode 例子
SELECT A.WELL_COMMON_NAME,
TO_CHAR(B.PROD_DATE, 'YYYYMMDD'),
C.PUMP_JACK_WORKING_TIME,
decode(d.OIL_PROD_METHOD,
'1A',
D.UP_CURRENT || '/' || D.DOWN_CURRENT,
d.ELEC_PUMP_CURRENT_A) dl,
from CD_WELL_SOURCE a,
PC_DEV_WELL_ATTR b,
PC_PRO_WELL_VOL_DAILY c,
PC_PRO_WELL_STATUS_DAILY d,
TEMP_WELL_MECH_ALL e
where c.Well_Id = a.Well_Id(+)
and c.well_id = b.well_id(+)
and c.well_id = d.well_id(+)
and c.prod_date = d.prod_date(+)
and c.prod_date = to_date('20081015', 'yyyyMMdd')
AND c.well_id = e.well_id(+)
AND c.prod_date = e.test_date(+)
and a.Org_Id in ({OrgList})
order by c.well_id, c.prod_date
相关文章推荐
- 做报表,写Sql语句的一点收获
- 做报表,写Sql语句的一点收获
- 解析关于SQL语句Count的一点细节
- 关于ADO+SQL /Access里面查询日期时间类型语句的一点总结
- WMS仓储管理系统实现"收发存日报表"数据查询功能Sql语句--Oracle
- 对持久层sql语句的高复用性的一点小领悟
- 使用SQL语句对数据进行简单报表汇总
- 关于SQL语句Count的一点细节
- ReportView如何使用构造SQL语句带参数的存储过程创建报表以及为rdlc传递参数
- SBO查询管理器中自定义报表不让用户看到SQL语句
- 水晶报表使用经验谈--使用sql语句直接生成dataset做为报表的数据源
- sql的三个主要语句及一点技巧
- 如何查看一个SCCM报表的SQL语句
- Orcale的SQL语句需要注意的一点
- 如何生成指定SQL语句的AWR报表
- 交叉报表sql语句使用
- SQL报表语句;SQL获取今日、本周、本月数据
- SQL Server 如何通过SQL语句定位SSRS中的具体报表
- switch语句的一点收获
- SQL语句之利用UNION查询生成报表