select nvl(sum1,'0')as sum1,nvl(sum2,'0') as sum2,da2 from(
select count(*) as sum1,substr(APPLY_DATE,6,2) as da1 from TBSHIPRUNCHECKAPPLY where apply_type like '%建造检验%'
and CHECK_TYPE  like '%新建%' and CHECK_ADDRESS like '%南京%' and  to_date(APPLY_DATE,'yyyy-MM-dd')
between to_date('2012-12-26','yyyy-mm-dd') and to_date('2013-12-25','yyyy-mm-dd') group by substr(APPLY_DATE,6,2))  a
left join  (
select count(*) as sum2,substr(APPLY_DATE,6,2) as da2 from TBSHIPRUNCHECKAPPLY where apply_type like '%建造检验%'
and CHECK_TYPE  like '%新建%' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) and  to_date(APPLY_DATE,'yyyy-MM-dd')
between to_date('2012-12-26','yyyy-mm-dd') and to_date('2013-12-25','yyyy-mm-dd')
group by substr(APPLY_DATE,6,2)) b on a.da1 = b.da2   order by da2

SELECT  '改建' as checktypename,COUNT (CASE WHEN substr(APPLY_DATE,6,2)='01' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm1,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='01' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm1,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='02' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm2,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='02' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm2,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='03' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm3,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='03' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm3,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='04' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm4,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='04' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm4,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='05' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm5,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='05' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm5,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='06' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm6,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='06' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm6,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='07' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm7,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='07' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm7,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='08' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm8,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='08' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm8,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='09' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm9,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='09' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm9,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='10' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm10,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='10' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm10,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='11' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm11,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='11' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm11,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='12' and CHECK_ADDRESS like '%南京%' then 1 end) as bdm12,
COUNT (CASE WHEN substr(APPLY_DATE,6,2)='12' and (CHECK_ADDRESS not like '%南京%' or CHECK_ADDRESS is null) then 1 end) as wdm12
FROM TBSHIPRUNCHECKAPPLY where apply_type like '%建造检验%'
and CHECK_TYPE  like '%改建%'  and  to_date(APPLY_DATE,'yyyy-MM-dd')
between to_date('2012-12-26','yyyy-mm-dd') and to_date('2013-12-25','yyyy-mm-dd')

unoin 的时候 group by 不要每个都加  只能在union 之后  加一次就好了.

oracle 复杂语句的更多相关文章

  1. Oracle 数据库语句大全

    Oracle数据库语句大全 ORACLE支持五种类型的完整性约束 NOT NULL (非空)--防止NULL值进入指定的列,在单列基础上定义,默认情况下,ORACLE允许在任何列中有NULL值. CH ...

  2. 45 个非常有用的 Oracle 查询语句

    ​ 这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 Oracle 开发者都必备的技能,所以快 ...

  3. Oracle sql语句执行顺序

    sql语法的分析是从右到左 一.sql语句的执行步骤: 1)词法分析,词法分析阶段是编译过程的第一个阶段.这个阶段的任务是从左到右一个字符一个字符地读入源程序,即对构成源程序的字符流进行扫描然后根据构 ...

  4. Oracle Update 语句语法与性能分析 - 多表关联

    Oracle Update 语句语法与性能分析 - 多表关联   为了方便起见,建立了以下简单模型,和构造了部分测试数据: 在某个业务受理子系统BSS中, SQL 代码 --客户资料表 create ...

  5. Sqlserver2008和Oracle分页语句

    SqlServer 分页语句 select StuID ,StuNo,StuName,Age,Sex, ClassName ClassName from (select *, row_number() ...

  6. Oracle SQL语句追踪

    Oracle SQL语句追踪 1   SQL语句追踪 追踪SQL语句的执行过程需要在Oracle服务器端进行,Oracle服务器端会检测并记录访问进程所执行的所有SQL语句.下面使用的命令都是在命令行 ...

  7. Oracle执行语句跟踪(2)——使用10046事件实现语句追踪

    接上篇博文Oracle执行语句跟踪(1)--使用sql trace实现语句追踪,一旦我们通过会话追踪获取到超时事物的执行语句,就可以使用10046事件对语句进行追踪. 启用10046事件追踪的方式 S ...

  8. 常用的Oracle数据库语句 (待更新完毕)

    一.常用的查询语句 1.1 常用查询 查表中有多少个字段 select count(*) from user_tab_columns where table_name=upper('表名') 或者 s ...

  9. 40多个非常有用的Oracle 查询语句

    给大家介绍是40多个非常有用的Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有Oracle 开发者都必备的技能,所以快快收藏吧! 日期 ...

  10. 45个非常有用的 Oracle 查询语句小结

    45个非常有用的 Oracle 查询语句小结 这里我们介绍的是 40+ 个非常有用的 Oracle 查询语句,主要涵盖了日期操作,获取服务器信息,获取执行状态,计算数据库大小等等方面的查询.这些是所有 ...

随机推荐

  1. Bootstrap 输入框和导航组件

    一.输入框组件 //在左侧添加文字 <div class="input-group"> <span class="input-group-addon&q ...

  2. 蓝牙--主机接口控制器(HCI)

    I提供对基带控制器和链路管理器的命令以及访问蓝牙硬件的统一接口,它是我们实现自己的蓝牙设备索要接触的第一个蓝牙协议,起着承上启下的作用. 1.概述 如下图所示,HCI通过对链路管理器.硬件状态注册器. ...

  3. yaf性能测试(wamp环境)

    1实现mvc 出现helloword,成功 2.controller重定向 $get = $this->getRequest()->getQuery("get", &q ...

  4. Mysql 只导出数据,不包含表结构

    mysqldump -u${user} -p${passwd} --no-create-info --database ${dbname} --table ${tablename} > ${ta ...

  5. php--validate表单验证实例

    验证效果:

  6. ArcGIS API for JavaScript开发环境搭建及第一个实例demo

    原文:ArcGIS API for JavaScript开发环境搭建及第一个实例demo ESRI公司截止到目前已经发布了最新的ArcGIS Server for JavaScript API v3. ...

  7. Stakeholder Risk Management

    In this article we'll address the people swirling around your project: stakeholders. You'll find som ...

  8. jQuery基本选择器

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  9. 修改phpmyadmin文件的最大上传大小

    修改php.ini 1.file_uploads on 是否允许通过HTTP上传文件的开关 2.upload_tmp_dir 文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹 ...

  10. C语言:十进制进制转换为其他进制(思想:查表法)

    // //  main.c //  Hex conversion // //  Created by ma c on 15/7/22. //  Copyright (c) 2015年 bjsxt. A ...