我在将下面的PostgreSQL表达式Map到一个CriteriaBuilder表达式时遇到了一个问题,该表达式提取了小时/分钟/dow:
select extract(hour from start_time) from meetings where id = 5;
字符串meetings
在数据库中有start_time
字段,稍后Map到ZonedDateTime start
Java实体字段。我尝试过CriteriaBuilder.function()
,但我无法真正理解如何将hour from start_time
表达式Map为一个函数参数。
谢谢你的帮助!
2条答案
按热度按时间nlejzf6q1#
我使用
DATE_PART
函数来获取小时数:字符串
SQL-request看起来类似:
型
t30tvxxf2#
Extract/Date_Part将给予时间戳中指定的子字段(我假设
ZonedDateTime
Map到Postgres数据类型timestamp with time zone
)。如果您想要完整的时间(hh:mi:ss),那么您只需将列转换为time
即可。因此字符串
如果你不想要秒,那么使用to_char:
型