0

如何编写查询以查找时差?

时间格式是这样的 2009-08-12 02:59:59

我想把这个时间与

2009-08-12 02:59:10

如何检查这两个

我想返回一些时差为 30 秒的行

怎么写SQL语句??

4

3 回答 3

2
select date_part('second',date1) - date_part('second',date2) 

在 SQL 中,你可以这样做,在几秒钟内给你输出

于 2009-08-11T11:22:03.233 回答
1
SELECT * FROM your_table WHERE time1_column - time2_column = interval '30s'

抱歉,鉴于您对问题的描述,这是我能做的最好的...

于 2009-08-11T11:12:48.603 回答
0

如果两个时间都是数据库表中的列,则可以直接使用关系运算符(>、< 和=) 例如。如果你有一个像 Test ( id bigint, starttime timestamp, endtime timestamp ) 这样的表;

然后您可以进行诸如 select * from test where starttime > end time 等查询。

如果要比较查询中的两个日期,可以先将文本转换为时间,然后比较它们可以使用:pgsql 的 datetime 函数参见:http ://www.postgresql.org/docs/6.3/static/c10.htm 更多细节

于 2009-08-11T11:15:55.010 回答