当前位置: 首页 > 知识库问答 >
问题:

如何比较PostgreSQL中datetime字段中的日期?

郁明诚
2023-03-14
select * from table where update_date >= '2013-05-03' AND update_date <= '2013-05-03' -> No results

select * from table where update_date >= '2013-05-03' AND update_date < '2013-05-03' -> No results

select * from table where update_date >= '2013-05-03' AND update_date <= '2013-05-04' -> results found

select * from table where update_date >= '2013-05-03' -> results found

共有1个答案

万博涛
2023-03-14

当比较update_date>='2013-05-03'时,postgres将值转换为相同的类型以比较值。因此,您的'2013-05-03'被浇铸为'2013-05-0300:00:00'。

因此,对于update_date='2013-05-03 14:45:00',您的表达式将是:

'2013-05-03 14:45:00' >= '2013-05-03 00:00:00' AND '2013-05-03 14:45:00' <= '2013-05-03 00:00:00'

这总是false

select * from table where update_date::date >= '2013-05-03' AND update_date::date <= '2013-05-03' -> Will return result
 类似资料:
  • 我需要比较MySQL中的日期,忽略列中的时间部分。我尝试了以下SQL。 即使MySQL表中有日期,它也不会检索任何行。在MySQL中比较日期时,如何忽略字段中的时间部分?

  • 问题内容: 在我的收藏夹中,每个文档都有2个修改和同步的日期。我想查找已修改>同步,或不存在同步的内容。 我试过了 但没有显示我的期望。有任何想法吗? 谢谢 问题答案: 您不能将一个字段与具有正常查询匹配的另一个字段的值进行比较。但是,您可以使用聚合框架执行此操作: 我在其中输入“您的其他常规查询”,因为您可以使该位使用索引。因此,如果您只想对该字段所在的文档执行此操作,则可以执行以下操作: 用输

  • 问题内容: 我有一个问题:是否可以通过将一个DATE字符串“ 2010-04-29”与以DATETIME(2010-04-29 10:00)存储的字符串进行比较来从MySQL数据库中进行选择? 我有一个过滤数据的日期选择器,我想按DATETIME字段查询表,如下所示: …,我想获得DATETIME值为“ 2010-04-29 10:00”的行。 有什么建议么?谢谢。 问题答案: 使用以下内容: 仅

  • 问题内容: 我想通过表达式从表中获取所有行: 但是,如果该列包含日期时间,可以这样说: 但是如果我这样做: 它不会排。 我猜这是因为$ date = 2014-07-10,这使MySQL假设它是2014-07-10 00:00:00。 在普通的MySQL中,我会做 使用Laravel的口才相当于什么? 问题答案: Laravel 4+为您提供这些方法:,,(#3946)和(#6879)。 他们为您

  • 问题内容: 在我的数据库日期中,如 ,等等,我需要检索在日期字段中具有当前日期的数据。我的意思是我只需要比赛。我该如何使用hibernate条件。 问题答案: 使用Restrictions.between()生成一个where子句,该子句的日期列在‘2012-04-09 00:00:00’和‘2012-04-09 23:59:59’之间 请注意,Criteria API中使用的所有属性都是Java

  • 问题内容: 如何在Java中比较两者之间的日期? 例: date1是 date2是今天 date3是 总是大于和今天始终。如何验证今天的日期是否在和之间? 问题答案: 日期有之前和之后的方法,可以相互比较,如下所示: 进行包容性比较: 你也可以尝试一下Joda-Time,但请注意: Joda-Time是Java SE 8之前的Java的事实上的标准日期和时间库。现在,要求用户迁移到java.tim