问题标签 [date-range]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
328 浏览

mysql - 日期索引 - 长范围搜索所有行,小不

当我切换到 1 年范围时,为什么 MySQL 会搜索所有行?

1750 行

执行
EXPLAIN SELECT * FROM dates WHERE date BETWEEN '2011-04-27' AND '2011-04-28'

行列显示18行。
如果我增加或减少 BETWEEN 范围 - 例如 1 年 -行列显示1750 行

EXPLAIN SELECT * FROM dates WHERE date BETWEEN '2011-04-27' AND '2012-04-28' EXPLAIN SELECT * FROM dates WHERE date BETWEEN '2010-04-27' AND '2011-04-28'

0 投票
1 回答
2151 浏览

c# - 用于最大和最小日期的文本框的 rangevalidator 不起作用?

我在页面加载中使用以下代码,但它给出了错误:

无法将类型隐式转换 System.DateTimestring

所以我将 RangeValidators 类型更改为字符串;但它不起作用,我希望文本框应该包含在运行时指定的最大值和最小值之间的日期?

0 投票
1 回答
1187 浏览

mysql - 如何在 MySQL Select 查询中获取时间范围

我正在处理一个我无法解决的问题。假设,我通过一个简单的 MySQL Select 查询得到结果:

rights保存描述用户需要访问的系统权限的记录。

权限受时间值的限制,显然是 FROM 和 TO。如果date_fromordate_to为 NULL,则权限是无限的(时间方面)。

表权限包含以下数据:

date_from 。. . . . . . . . date_to

2011 年 5 月 20 日。. . . . . . . . 2011 年 8 月 20 日
2011 年 6 月 20 日。. . . . . . . . 空
2011-03-20 。. . . . . . . . 2011-04-20
空... . . . . . . . . . . . 2011-01-20

我真正需要使用 SELECT 查询得到的是:

date_from 。. . . . . . . . date_to

2011 年 5 月 20 日。. . . . . . . . 空
2011-03-20 。. . . . . . . . 2011-04-20
空... . . . . . . . . . . . 2011-01-20

希望你明白我的意思。我只需要对结果进行分组,以便在每个日期值相交的地方获得尽可能广泛的限时权限;)

我认为, GROUP BY 子句应该可以完成这项工作,但我就是找不到正确的公式。如果可能的话,我也想避免使用程序。

0 投票
3 回答
1547 浏览

sql - 多个日期范围的 PostgreSQL 价格

我有以下给定日期范围的费率表。

我想编写一个 sql 查询(PostgreSQL)来获取给定时期的价格总和,如果它是一个连续时期..例如:

如果我在第一组中指定 2011-05-02 到 2011-05-09,则应返回 6 行的总和,

如果我在第二组中指定 2011-05-02 到 2011-05-011,则不应返回任何内容。

我的问题是我不知道如何确定日期范围是否连续......你能帮忙吗?非常感谢

案例1:预期总和

案例 2:预期没有结果

我没有重叠的费率日期范围。

0 投票
3 回答
2055 浏览

sql - 标记不连续的日期范围

背景(输入)

全球历史气候学网络在其收集的天气测量数据中标记了无效或错误的数据。删除这些元素后,有大量数据不再具有连续的日期部分。数据类似于:

问题(输出)

尽管可以推断缺失数据(例如,通过其他年份的平均值)以提供连续范围,但为了简化系统,我想根据是否有连续的日期范围来填充月份来标记非连续段:

一些测量是在 1843 年进行的。

问题

对于所有气象站,您将如何标记月份中缺少一天或多天的所有天数?

源代码

选择数据的代码类似于:

相关想法

生成一个包含连续日期的表格,并将它们与测量的数据日期进行比较。

更新

可以使用本节中的 SQL 重新创建该问题。

桌子

创建表如下:

生成数据

以下 SQL 将数据插入到表中(id[int]、name [varchar]、date [date]、valid[boolean]):

'A'通过值'F'表示在特定日期进行测量的气象站的名称。

删除随机行

删除一些行如下:

尝试#1

以下不会将valid标志切换到false一个月中缺少一天或多天的所有天:

尝试#2

以下 SQL 生成一个空结果集:

尝试#3

以下 SQL 生成站名和日期的所有可能组合:

然而,在实际数据中,有数百个站点,并且日期可以追溯到 1800 年代中期,因此所有站点的所有日期的笛卡尔坐标都太大。如果有足够的时间,这种方法可能会奏效……必须有更快的方法。

尝试#4

PostgreSQL 有窗口函数。

如何使用 postgres 中的窗口函数选择特定更改

谢谢!

0 投票
1 回答
1229 浏览

string - 检测重叠范围并在 oracle 中更正

谷歌搜索了一下,我发现这是一个有趣的问题。想请你们拍。

有我的桌子

我想要的是修复用户的2情况,其中映射AB重叠几天(从 20110105 到 20110107)。我希望我能够以永远不会返回重叠范围的方式查询该表。我的输入数据已经很错误了,所以我不必担心冲突处理,我只想能够为任何给定的BETWEEN这些日期获得一个值。

我正在尝试构建的查询的可能输出就像

算法是否导致“无效范围”甚至都没有关系,例如 Start = 20110105, End = 20110103,当我遇到这些情况时,我只会设置 null 。

你们会怎么说?有什么直接的方法可以完成这项工作吗?

谢谢!

F。

0 投票
1 回答
2801 浏览

php - cakephp在日期之间搜索和分页

我正在尝试修改此代码以在我的应用程序 http://mrphp.com.au/code/search-forms-cakephp中实现搜索

代码有效,但我正在尝试按日期添加过滤器

而且这个过滤器不起作用...

这是我的代码

}

网址就像 index/Search.data1:2011-05-19/Search.data2:2011-05-26

有任何想法吗?

谢谢

0 投票
4 回答
2633 浏览

sql - django 聚合以使用按日期范围分组来降低分辨率

可怕的标题,但让我解释一下:我有这个 django 模型,其中包含时间戳(日期)和记录属性 - fe 消耗一些资源的用户数量 - (值)。

对于每 10 秒,该表包含用户数。像这样的东西:

现在我想从这些数据中生成不同的统计数据,每个数据都有不同的分辨率。fe 对于最后一天的图表,我不需要 10 秒的分辨率,所以我想要 5 分钟的步骤(通过平均从 t1 到 t29、t30 到 t59 的行的值(也可能是日期)来构建, ...),所以我会得到:

保持变量的属性是开始和结束时间戳和分辨率(如 5 分钟)。有没有使用 django orm/queryset api 的方法,如果没有,如何使用自定义 sql 来实现?

0 投票
3 回答
277 浏览

mysql - mysql 视图中的日期范围导致运行缓慢

我在mysql表中有一个具有这种结构的表

id (primary index) title, date (datetime) publicready (boolen)

我创建这样的视图

如果我对其运行查询需要 1.8 秒,但

如果我从视图中删除日期范围相同的查询 .0009 秒

为什么会发生这种情况,我该如何解决?

我在我们正在检查的所有列上放了一个索引,它确实在 1.6 时稍微快了一点

0 投票
2 回答
4297 浏览

jquery - jQuery alertnative to 'Timeframe'(日期范围选择器)

我正在尝试为 jQuery 找到一个日期游侠选择器。

首先,我发现jQuery Tools 解决方案看起来非常完美,但不幸的是在 IE6 中不起作用,这是迄今为止最常用的浏览器。

然后我在 jQuery 中找到了一个很好的范围选择器,但它在 Javascript 中返回的内容似乎非常有限(我想要开始日期、结束日期和计算之间的天数)。

然后我的注意力转向了Timeframe,它曾经的样式看起来是一个完美的解决方案,让您可以清楚地看到它是一个日期选择器,还允许您在日期之间单击和拖动。问题; 它使用原型,我在这里不允许使用它(仅限 jQuery 或纯 JavaScript!)

如果有人知道满足我需求的任何解决方案,我将不胜感激,谢谢。

附言。我尝试了默认的 jQuery 日期范围选择器,但发现它非常笨重、臃肿且不符合我的需要。