2009-08-14 19 views
0

2表:SQL時間差

Id: long unique; timestamp:long; price:double 

両方のテーブル内のデータは、タイムスタンプを除いて同一です。 タイムスタンプはunix_timeとしてmsになります。

質問:1000msよりも時間差が大きいペアはいくつありますか?

+0

一般に、あなたの質問に使用しているSQL方言を言及する必要があります。 – Thorarin

+0

@Thorain、同意します。 – Siv

答えて

1

はこれを試してみてください:IDを想定し

SELECT COUNT(*) 
FROM Table1 t1 INNER JOIN Table2 t2 ON t1.id = t2.id 
WHERE 
    (t1.timestamp - t2.timestamp > 1000) or 
    (t2.timestamp - t1.timestamp > 1000) 
+0

@Rax、あなたの質問を試みました。それは望ましい結果を示しています。ありがとう、トン! – Siv

0

は、テーブルとタイムスタンプの両方で同じです

はこれらがあなたのテーブル

ID | timestamp | price 

あると仮定だけ別のフィールドである私たちは、TABLE1それらを呼び出しますテーブル2

select count(*) from table1 t1 
inner join table2 t2 on t1.ID=t2.ID 
where (t1.timestamp-t2.timestamp) > 1000 
or (t2.timestamp-t1.timestamp)>1000 
+0

@Saeros、私はあなたの質問を試みたが、私はグループを必要としない。私はちょうどカウントを必要とし、それもあまりにもIdの列がユニークな権利を持っている..あなたの答えをありがとう! – Siv