我正在尝试使用Jquery Highcharts插件创建可视化图表。

但是我无法编写查询来创建插入JS所需的数据。

我需要做的是向客户显示,有多少唯一身份访问者单击了他的求职广告。
您可以看到最终的输出,我正在尝试做的事情。

这是必需的JS的一部分;

xAxis: {
   categories: ['01.05', '02.05', '03.05', '04.05', '05.05',
                '06.05', '07.05','08.05']
   },
series: [{
            name: 'Unique',
            data: [12,8,9,10,5,4,11,30]
        }]

带有统计表;
Job_Ad_Statistics
-----------------
jobID,  jobstat_Date,     job_statUnique
1       07.05.2011        0
1       07.05.2011        1
1       07.05.2011        1
2       06.05.2011        1
3       06.05.2011        1
1       05.05.2011        1
1       04.05.2011        1
*Currently, table has 20k rows.

我需要获取多个Count,其中job_statUnique = 1 AND jobstat_Date在现在和从现在开始的7天之间,以便将数据插入到“系列”字段中。
Expected Result:
----------------
Day              Unique_ViewCount_of_jobID (Assuming ID 1)
.... start from 7 days earlier
02.05            0
03.05            0
04.05            1
05.05            1
06.05            0
07.05            2
08.05            0 - today

感谢帮助。

最佳答案

万一有人需要答案,这就是我的解决方法。

  ;WITH Date_Range_T(d_range) AS
     (
       SELECT DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()) - 6, 0)
       UNION ALL SELECT DATEADD(DAY, 1, d_range)
       FROM Date_Range_T
       WHERE DATEADD(DAY, 1, d_range) < GETDATE()
     )

  SELECT d_range, COUNT(job_statID) as total
  FROM Date_Range_T
       LEFT JOIN Jobs_Stats on (job_stat_Date=d_range)
  GROUP BY d_range ORDER BY d_range ASC

注意: job_stat_Date必须是Date而不是DateTime

关于sql - 如何使用SQL查询创建图表数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5928194/

10-17 03:11