如何过滤日期值?

Posted

技术标签:

【中文标题】如何过滤日期值?【英文标题】:How can I filter on date values? 【发布时间】:2021-02-11 10:14:12 【问题描述】:

使用RODBC,我想查询一个表并返回80岁或以上的每个人。

我使用的查询(在我的 R 脚本中)是:

sqlQuery(con, "SELECT *
              FROM People
              WHERE BirthDT >= '1941-02-11'")

BirthDT 字段如下所示:

 [1,] "1937-07-12"
 [2,] "1939-04-20"
 [3,] "1938-11-10"
 [4,] "1987-10-24"
 [5,] "1991-07-04"
 [6,] "1984-03-24"
 [7,] "1986-03-14"
 [8,] "1937-08-18"
 [9,] "1938-09-28"
[10,] "1934-08-23"

我也试过这个(指定不同的日期格式):

sqlQuery(con, "SELECT *
              FROM People
              WHERE BirthDT >= '11/02/1941'")

和以前一样,它没有按预期过滤。

我尝试了此查询的一些变体,包括显式日期转换/转换,但似乎没有任何效果。

我哪里错了?

【问题讨论】:

因为您将其标记为 r 问题,所以可以这样完成 'ab "2000-01-01"),] ' 这是一个 R 包,我想在 SQL 查询本身进入我的环境之前对其进行日期过滤。为清楚起见,添加了SQL 标签。 这个答案可能会帮助你更多***.com/questions/66152303/… 看这里:***.com/questions/15020299/rodbc-date-filter>我认为这会让你走得更远。 这能回答你的问题吗? rodbc date filter 【参考方案1】:

80 岁或以上。

这意味着他们的出生时间比当前日期(80 岁)早。您的比较方向错误:

sqlQuery(con, "SELECT *
              FROM People
              WHERE BirthDT <= '1941-02-11'")

【讨论】:

漫长的一天……说实话,我什至没有怀疑我按错了键,因为一些较早返回的结果发生在 1941 年之前。事实上,为什么可能考虑到&gt;= 语法,发生了什么?

以上是关于如何过滤日期值?的主要内容,如果未能解决你的问题,请参考以下文章

如何过滤日期

如何在 Access SQL 中使用 BETWEEN 和 AND 来过滤日期范围?

如何使用 dojox.jsonPath.query 过滤/查询日期

如何在 iOS Swift 中使用段控制从模型中过滤名称、日期?

SQLAlchemy:如何按两个字段分组并按日期过滤

按日期值过滤列表