当前位置: 首页 > 面试题库 >

在HQL中执行日期/时间数学运算?

汲利
2023-03-14
问题内容

我正在寻找如何在HQL查询中执行日期/时间数学。具体来说,如何从current_timestamp()函数结果中增加或减少(x)时间?还是我必须为此使用SQL并希望正在运行的任何数据库都支持它?

HQL查询示例

FROM RandomThing
WHERE randomTime IS NOT NULL AND
      randomTime >= current_timestamp() AND
      randomTime <= (current_timestamp() + :timeToAdd)

我可以将:timeToSubtract参数定义为任何特定单位,尽管大于小时的值是不希望的,而秒数则是最理想的。

澄清:我意识到这可以在查询之外轻松完成。但是出于哲学原因,可以说使用数据库服务器的时间而不是查询系统的时间很重要。实际示例:我正在查询自动时间戳,以获取最近(x)时间内的所有条目。由于时间戳是由数据库系统确定的,因此也必须使用数据库的当前时间。


问题答案:

如果您需要数据库服务器的时间,则可以首先执行一个简单的hql查询以获取时间戳,然后以java计算maxTimestamp并将获取的时间戳和计算出的maxTimeStamp传递给类似ccclark的查询。



 类似资料:
  • 问题内容: 我想使用HQL从表中获取过期的实体。像这样: 我无法使用HQL做到这一点。我不想做额外的查询,在Java代码中处理日期等等。这必须在HQL级别上完成。 你能帮我么? 问题答案: 根据您的数据库,这可能非常简单。HQL支持内置的特定于供应商的特性和功能,如果HQL不支持新功能,它还支持通过注册新功能来扩展方言的功能。 假设您使用的是SQLServer(或Sybase)。SQLServer

  • 问题内容: 我有一个数据集,其中包含对频率为2分钟的几周的观察。我想将时间间隔从2分钟增加到5分钟。问题在于,观察的频率并不总是相同的。我的意思是,从理论上讲,每10分钟应进行5次观察,但通常情况并非如此。请让我知道如何根据平均功能以及观察的时间和日期汇总观察。换句话说,基于每5分钟的汇总,而对于每5分钟的时间间隔,观察次数却不同。此外,我有时间戳格式的日期和时间。 示例数据: 预期成绩: 问题答

  • 问题内容: 我必须比较hibernatehql查询中的两个日期。我在我的Java bean中使用java.util.Date,并在MySQL数据库中将时间戳用作数据类型。 上面的查询将时间与日期进行比较。我应该怎么做才能在没有时间的情况下比较上述查询中的日期。 问题答案: 有关可用的日期功能,请参见Hibernate文档。 http://docs.jboss.org/hibernate/orm/3

  • 问题内容: 您实际上如何执行日期时间操作,例如添加日期,查找差异,找出间隔中不包括周末的多少天?我个人开始将这些操作中的一些传递给我的postgresql dbms,因为通常我只需要发出一个sql语句来获得答案,但是,以PHP的方式进行操作,我将不得不编写更多的代码,这意味着更多的机会发生错误… PHP中是否有任何不需要大量代码即可进行日期时间操作的库?在“给定两个日期,两个日期之间有多少个工作日

  • 我知道要冬眠。我有一个sql语句 我尝试用createCriteria和HQL实现它。 HQL: 问题是,此HQL的执行时间延长了10倍。并执行许多不必要的查询。我尝试使用注释字符串进行转换,它有了一些改进,但仍然比createCriteria查询长5倍,此外,我无法进行此转换 <代码>列表 版本数据防御

  • 问题内容: 我在csv文件中有一个日期列,说有这种格式的日期,我还有另外一列。在列中,我要填充紧接在日期列中提到的日期之后的日期。例如。如果date列具有日期,那么我想在Next_Day列中。 我们可以在excel中使用,但我不知道如何在Python中执行此操作。 请帮助我解决这个问题。 问题答案: 使用