相关疑难解决方法(0)

从日期范围生成天数

我想运行一个类似的查询

select ... as days where `date` is between '2010-01-20' and '2010-01-24'
Run Code Online (Sandbox Code Playgroud)

并返回如下数据:

days
----------
2010-01-20
2010-01-21
2010-01-22
2010-01-23
2010-01-24

mysql sql datetime between

134
推荐指数
6
解决办法
11万
查看次数

MySQL如何填写范围内的缺失日期?

我有一个包含2列,日期和分数的表格.它最多有30个条目,过去30天每个条目一个.

date      score
-----------------
1.8.2010  19
2.8.2010  21
4.8.2010  14
7.8.2010  10
10.8.2010 14
Run Code Online (Sandbox Code Playgroud)

我的问题是缺少一些日期 - 我想看到:

date      score
-----------------
1.8.2010  19
2.8.2010  21
3.8.2010  0
4.8.2010  14
5.8.2010  0
6.8.2010  0
7.8.2010  10
...
Run Code Online (Sandbox Code Playgroud)

我需要从单个查询得到:19,21,9,14,0,0,10,0,0,14 ......这意味着缺少的日期用0填充.

我知道如何获取所有的值,并在服务器端语言迭代日期和错过空白.但这是否可以在mysql中进行,因此我按日期对结果进行排序并获取缺失的部分.

编辑:在此表中有另一列名为UserID,因此我有30.000个用户,其中一些在此表中有分数.如果日期<30天以前,我每天都会删除日期,因为我需要每个用户最近30天的分数.原因是我正在制作过去30天内用户活动的图表,并绘制图表我需要用逗号分隔的30个值.所以我可以在查询中告诉我USERID = 10203活动,查询会得到30分,过去30天每一分.我希望我现在更清楚了.

mysql sql gaps-and-islands

59
推荐指数
4
解决办法
4万
查看次数

在PostgreSQL的范围内获取日期列表

我想在PostgreSQL数据库中获取两个日期(包括它们)之间的日期列表.例如,如果我有:

  • 开课日期:2012年6月29日
  • 截止日期:2012年7月3日

那么结果应该是:

29 june 2012
30 june 2012 
1 july 2012 
2 july 2012 
3 july 2012
Run Code Online (Sandbox Code Playgroud)

在PostgreSQL中执行此操作的最佳方法是什么?

谢谢.

sql postgresql date date-comparison

57
推荐指数
5
解决办法
4万
查看次数

SQL Server:即使某些天没有数据,如何选择日期范围内的所有日期

我有一个应用程序需要显示过去30天内的活动条形图.即使当天没有任何活动,图表也需要显示所有日期.

例如:

DATE       COUNT
==================
1/1/2011   5 
1/2/2011   3 
1/3/2011   0
1/4/2011   4
1/5/2011   0
etc....
Run Code Online (Sandbox Code Playgroud)

我可以在查询之后进行后期处理以找出缺少的日期并添加它们但是想知道在SQL Server中是否有更简单的方法.非常感谢

t-sql sql-server

28
推荐指数
3
解决办法
6万
查看次数