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
  • 相关阅读:
    60、剑指offer--把二叉树打印成多行
    59、剑指offer--按之字形顺序打印二叉树
    KNN(最近邻算法)
    RBM(受限玻尔兹曼机)
    Denoising Autoencod
    决策树算法
    AdaBoost算法简介
    suricata工作流程简介
    KD tree详解
    tesseract训练新字库
  • 原文地址:https://www.cnblogs.com/wanglao/p/3538807.html
Copyright © 2011-2022 走看看