Sql 如何知道postgres表单元格中是否存在某个时间戳

Sql 如何知道postgres表单元格中是否存在某个时间戳,sql,postgresql,timestamp,timezone,Sql,Postgresql,Timestamp,Timezone,有一个postgres表的时间戳带有时区(格式为'YYYY-MM-DD HH24:MI:SS.pppp'表作为主键)。我想检查postgres表中是否存在某个时间戳(没有时区) 我尝试了以下查询: SELECT DATE_TRUNC ('minute', time_stamp) at time zone tz_name as time_stamp from table_name WHERE time_stamp at time zone tz_name = TO_TIMESTAMP('2019-

有一个postgres表的时间戳带有时区(格式为'YYYY-MM-DD HH24:MI:SS.pppp'表作为主键)。我想检查postgres表中是否存在某个时间戳(没有时区)

我尝试了以下查询:

SELECT DATE_TRUNC ('minute', time_stamp) at time zone tz_name as time_stamp
from table_name WHERE time_stamp at
time zone tz_name = TO_TIMESTAMP('2019-11-25 09:10','YYYY-MM-DD HH24:MI') 
但是,它不返回任何内容。但是,当我查询间隔时,它将返回值。以下查询返回大于指定值的时间戳:

SELECT DATE_TRUNC ('minute', time_stamp) at time zone tz_name as time_stamp
from table_name WHERE time_stamp at
time zone tz_name >= TO_TIMESTAMP('2019-11-25 09:10','YYYY-MM-DD HH24:MI') 

如何查找表中是否存在时间戳?

我相信您可以使用以下方法:

select * 
from mytable_time
where to_char(datec,'yyyy-mm-dd hh24:mi') = '2019-02-11 18:15'

这是向您展示两个不同列如何工作的示例:时间戳和日期列。希望这能有所帮助。

Hi@bhumika53,希望您的反馈有用吗?是的,它有效。下面也有效。区别在于您的方法通过转换为字符串进行比较,而下面是比较时间戳。
从表名称中选择时区tz名称的日期(分钟、时间戳)作为时间戳,其中时区tz名称的日期(分钟、时间戳)为时间戳('2019-11-25 09:10','YYYY-MM-DD HH24:MI')
我不知道你为什么要这样做。一边是字符串,另一边不是,所以最好只进行一次转换。我相信你会发现我的方法更快…尝试一下。。。