zoukankan      html  css  js  c++  java
  • sql 技巧查询

      注意: oracle .sql 查询中 用<> 或者 !=null  ,也顺便过滤掉了该字段中所有为null的值。

       介绍一种行转列,常见的案例 统计各个公司 各个发票的数量,妙用sum函数,用sum 函数做累计, 如果统计每家公司每种类型的发票量,

    通常 按照 按照公司编号,发票类型来分组,但是这样就会出现一家的统计数据在3行,这时就要用到行转列;

       

    SELECT
               xhdwmc,
               xhdwdm,
           sum(case when FPLXDM='004' then 1 ELSE 0 end ) zp,
           sum(case when FPLXDM='007' then 1 ELSE 0 end ) pp,
           sum(case when FPLXDM='026' then 1 ELSE 0 end ) dp
           FROM
               bw_fpzxx
           WHERE
               TRUNC(kprq)  = TRUNC(SYSDATE)
           AND LYBZ != '08'
           AND XHDWDM != '11010120181019084'
           And FPLXDM in('004','007','026')
           GROUP BY
               xhdwdm,
               xhdwmc
    
           ORDER BY
            xhdwdm

       

    Oracle中按连续号码分段

      oracle 连续号码分段,我们如何分组:

      

    select min(t.fphm),max(t.fphm) ,count(1), (max(t.fphm)-min(t.fphm)+1)
    
    from 
    
    (select fphm, (fphm-rownum) as tnum
    
    from bw_fpzxx s
    where s.XHDWDM='91310101132208081P' and s.fplxdm='026'
    
    and  s.kprq >= TO_DATE (
        '2019-07-01',
        'yyyy-mm-dd hh24:mi:ss'
    )
    AND s.kprq <= TO_DATE (
        '2019-07-31 23:59:59',
        'yyyy-mm-dd hh24:mi:ss'
    )
    
    
    order by fphm  ) t
    
    group by t.tnum

        

  • 相关阅读:
    Socket规划(1)
    hdu 2391 Filthy Rich
    UDP议定书图像高速传输无损失程序
    C# 通过豆瓣网络编程API获取图书信息
    OS调度算法常用摘要
    mysql回想一下基础知识
    2015第37周三
    2015第37周二
    2015第37周一
    2015第37周一struts2 jstl 标签
  • 原文地址:https://www.cnblogs.com/caibixiang123/p/11294605.html
Copyright © 2011-2022 走看看