zoukankan      html  css  js  c++  java
  • sql 查询分组结果集

    SELECT Isnull(( CASE
                      WHEN provide_region BETWEEN 1000 AND 1999 THEN '公司内部门-' + option_name
                      WHEN provide_region BETWEEN 2000 AND 2999 THEN '公司外人员-' + provide.name
                      WHEN provide_region BETWEEN 3000 AND 3999 THEN '分公司-' + option_name
                    END ), '') AS provide_region,
           datepart_month,
           per_count
    FROM   (SELECT Count(id)                      AS per_count,
                   personnel_provide_id,
                   Datepart(month, returned_date) AS datepart_month
            FROM   yh_personnel
            WHERE  yh_personnel.personnel_type&60 = 32
                   AND returned_date BETWEEN '2020-1-1'AND '2020-12-31'
            GROUP  BY personnel_provide_id,
                      Datepart(month, returned_date)) AS tb_base
           LEFT JOIN yh_personnel_provide AS provide
                  ON tb_base.personnel_provide_id = provide.id
           LEFT JOIN yh_select_option
                  ON option_id = provide.provide_region
                     AND option_tags = 'region'
    WHERE  personnel_provide_id != 0
           AND datepart_month != 0 
    SELECT (SELECT option_name
            FROM   yh_select_option
            WHERE  option_id = P_yq
                   AND option_tags = 'PTYQ') AS subject,
           Count(CASE
                   WHEN department = 11 THEN 1
                 END)                        AS channel_expansion_count,
           Count(CASE
                   WHEN department = 14 THEN 1
                 END)                        AS channel_maintenance_count,
           Count(CASE
                   WHEN department = 12 THEN 1
                 END)                        AS business_count,
           Count(CASE
                   WHEN department = 13 THEN 1
                 END)                        AS project_count,
           Count(CASE
                   WHEN department = 15 THEN 1
                 END)                        AS business_support_count,
           Count(CASE
                   WHEN department = 16 THEN 1
                 END)                        AS assets_manager_count,
           Count(CASE
                   WHEN department = 17 THEN 1
                 END)                        AS clearing_count,
                count(case when P_jd=4 then 1 end ) as invalid_count,
                '/' as timeout_count,
                yh_manager.*
    FROM   yh_ps_demand_application
           LEFT JOIN yh_manager
                  ON yh_manager.id = yh_ps_demand_application.P_fqr
    group by P_yq
  • 相关阅读:
    数据挖掘、机器学习、人工智能学习笔记
    SQL Server 定价及授权方式
    数据仓库的架构以及数据分层【转】
    java各历史版本官网下载
    VMware三个版本workstation、server、esxi的区别
    顶级项目孵化的故事系列——Kylin的心路历程【转】
    Oracle数据库学习笔记
    数据仓库学习笔记
    多维数据库介绍【转】
    ROLAP、MOLAP和HOLAP区别
  • 原文地址:https://www.cnblogs.com/wiggin-Z/p/13845272.html
Copyright © 2011-2022 走看看