zoukankan      html  css  js  c++  java
  • donetcharting中使用的sql语句

    donetcharting数据返回格式为项目列,数据列1,数据列2.。。。数据列就是条形图中的条和饼形图中的块。

    alter procedure pro_hourshot
    @conditionStart varchar(60),
    @conditionEnd varchar(60)
    as
    if(@conditionStart is not null or @conditionStart !='' or @conditionEnd is not null or @conditionEnd !='')
    
    begin
    
    --使用CTE(共用表表达式)的SQL语句应紧跟在相关的CTE后面,否则失效
    with yuyue as (
    select datepart(hh,dialogTime) as somehour, count(*) as yuyuecount
    from yy_detail where 1=1 and tujing=(select id from yy_tujingtype where name='网络') 
    and (dialogTime between @conditionStart and @conditionEnd)
    convert(varchar(10),dialogTime,120) ='2013-12-15'
    group by datepart(hh,dialogTime) 
    ),daoyuan as(
    select datepart(hh,jizhendate) as somehour, count(*) as daoyuancount
    from yy_detail where 1=1 and tujing=(select id from yy_tujingtype where name='网络') 
    and (jizhendate between @conditionStart and @conditionEnd) 
    -- @daoyuancondition and convert(varchar(10),jizhendate,120) ='2013-12-15'
    group by datepart(hh,jizhendate) 
    )
    
    select 
    --注意使用sum
    result.date,sum(result.aayuyuecount),sum(result.aadaoyuancount) from 
    (
    select fullresult.somehour as date,AAAA.data_yuyuecount as aayuyuecount,AAAA.data_daoyuancount as aadaoyuancount from 
    (
    select datepart(hh,dialogTime) as somehour from yy_detail where convert(varchar(4),dialogTime,120)='2013' group by datepart(hh,dialogTime)
    ) as fullresult
    left join 
    (
    select yuyue.somehour as data_hour , yuyue.yuyuecount as data_yuyuecount,daoyuan.daoyuancount as data_daoyuancount 
    from yuyue 
    left join daoyuan on yuyue.somehour=daoyuan.somehour
    )as AAAA
    on fullresult.somehour=AAAA.data_hour
    
    union
    
    select fullresult.somehour,BBB.data_yuyuecount,BBB.data_daoyuancount from 
    (
    select datepart(hh,dialogTime) as somehour from yy_detail where convert(varchar(4),dialogTime,120)='2013' group by datepart(hh,dialogTime)
    ) as fullresult
    
    left join 
    (
    select daoyuan.somehour as data_hour , yuyue.yuyuecount as data_yuyuecount,daoyuan.daoyuancount as data_daoyuancount
    from daoyuan
    left join yuyue on yuyue.somehour=daoyuan.somehour
    )as BBB
    on fullresult.somehour=BBB.data_hour
    ) as result
    group by result.date
    
     
    
    
    end

    饼形图则为

    select (
    select name from yy_area where id=yy_detail.patientaddress
     ) as area,
    count(*) as count from yy_detail
     where 1=1 and tujing =(select top 1 id from yy_tujingtype where name='网络') group by patientaddress order by count desc
  • 相关阅读:
    为什么程序员难找对象?
    项目为什么会失败(预估时间真的很难,必须有充分的心理准备,所有人高度重视项目的难度。总结:如果客户觉得事情简单,那么项目一定会延期。如果客户和老板都觉得事情简单,那么项目会烂尾)
    在Ubuntu 12.04 LTS下成功访问Windows域共享(mount //192.168.1.102/share -o user=DOMIAN\user,pass=passwd /mnt)
    微服务架构
    net core web服务器实现
    突破内存限制的高性能排序
    .Net Core:部署应用
    Apollo的Oracle适配
    前端模块化
    通用的业务技术架构
  • 原文地址:https://www.cnblogs.com/wanglao/p/3538807.html
Copyright © 2011-2022 走看看