Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果字段是时间戳,如何仅按日期选择?_Java_Sql_Hibernate_Postgresql - Fatal编程技术网

Java 如果字段是时间戳,如何仅按日期选择?

Java 如果字段是时间戳,如何仅按日期选择?,java,sql,hibernate,postgresql,Java,Sql,Hibernate,Postgresql,我有一个没有时区的数据库字段timestamp,其值类似于2015-11-23 14:42:55.278 现在我只想使用日期部分查找数据库记录2015-11-13 可能吗 理想情况下使用hibernate和spring。您可以将列强制转换为日期,例如: 专上研究生: the_timestamp_column::date = date '2015-11-13' 或(标准SQL) 您还可以使用date\u trunc() 您可以将列强制转换为日期,例如: 专上研究生: the_timestamp_

我有一个没有时区的数据库字段
timestamp
,其值类似于
2015-11-23 14:42:55.278

现在我只想使用日期部分查找数据库记录
2015-11-13

可能吗


理想情况下使用hibernate和spring。

您可以将列强制转换为日期,例如:

专上研究生:

the_timestamp_column::date = date '2015-11-13'
或(标准SQL)

您还可以使用
date\u trunc()


您可以将列强制转换为日期,例如:

专上研究生:

the_timestamp_column::date = date '2015-11-13'
或(标准SQL)

您还可以使用
date\u trunc()


如果您只想获取2015-11-13天的记录,那么您可以使用
关键字和开始日期的时间戳获取所有记录

2015-11-13:和2015-11-14:之间的日期字段:


2015-11-13:和2015-11-13:之间的日期字段:

如果您只想获取2015-11-13天的记录,则可以使用
between
关键字和使用开始日期的时间戳获取所有记录

2015-11-13:和2015-11-14:之间的日期字段:


2015-11-13:和2015-11-13:之间的日期字段:

我不确定是否是性能术语的最佳方式,但您可以搜索介于
2015-11-23 00:00:00.000
2015-11-23 23:59:59.999
之间的日期,我不确定是否是性能术语的最佳方式,但是您可以搜索介于
2015-11-23 00:00:00.000
2015-11-23 23:59:59.999

之间的日期(列为日期)转换为您连接到哪个数据库?因此,您想拥有日期为
2015-11-13
的所有记录,而不考虑时间?或者您想要其他内容吗?日期的所有记录,不考虑时间。强制转换(列为日期)您连接到哪个数据库?因此,您想要所有日期为
2015-11-13
,不考虑时间的记录?或者你想要别的什么?所有日期记录,不管时间。技术上是正确的,因为Postgres时间戳的精度为微秒。但我认为你更擅长于
'2015-11-23'你是对的。在任何情况下,Postgree都会从
yyyy-mm-dd
转换到
yyy-mm-dd hh:mm:ss.mmm
我更喜欢这个解决方案(带有Andomar的更正)而不是接受的答案,因为它利用了列上的索引(假设有索引)。技术上正确,因为Postgres时间戳的精度为微秒。但我认为你更擅长于
'2015-11-23'你是对的。在任何情况下,Postgree都会从
yyyy-mm-dd
转换到
yyy-mm-dd hh:mm:ss.mmm
我更喜欢这个解决方案(带有Andomar的更正)而不是接受的答案,因为它利用了列上的索引(假设有索引)。