2009-08-11 10 views
0

時間差を見つけるためにクエリを書く方法は?pgsql time diffrence?

時刻の形式は、私が

2009-08-12 2時59分10秒で この時間を比較したいこの 2009-08-12 2時59分59秒

のようなものです

は、これら二つの

iは時間差を有するいくつかの行を返すようにしたい確認方法を30秒である

SQL文の書き方は?申し訳ありません

答えて

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

をあなたが行うことができますSQLでは秒

であなたに出力を与えている。このよう
+1

私はそれがうまくいかないと思う。 2009-08-12 02:59:59と2012-10-08 12:13:59を比較すると、文は0を返します。 –

1
SELECT * FROM your_table WHERE time1_column - time2_column = interval '30s' 

これは時間の両方が、データベーステーブルの列であれば、あなたが直接 関係演算子(>、<を使用することができます...問題のあなたの説明与えられ、

+0

time2_columnがtime1_columnより大きい場合は、間隔を '-30s'にする必要があると思います。 – Paul

0

私ができる最善であります==) Ex。 のようなテーブルがある場合 ( id bigint、 starttimeタイムスタンプ、 endtimeタイムスタンプ );

がテストどこSTARTTIME>終了時間 などから選択*のように、あなたは、クエリを持つことができます。..

クエリで二つの日付を比較したい場合は、最初の時間にテキストを変換し、それらを比較することができ あなたが使用することができます:pgsqlの 参照の日時機能:詳細はhttp://www.postgresql.org/docs/6.3/static/c10.htm