2016-09-08 3 views
0
ids yesterday date  ids today  date 

s 01516047894532 07.09.2016 01516047894532 08.09.2016 
s 01516047894533 07.09.2016 01516047894533 08.09.2016 
m 01516047894524 07.09.2016 01516047894534 08.09.2016 
m 01516047894525 07.09.2016 01516047894535 08.09.2016 
m 01516047894526 07.09.2016 01516047894536 08.09.2016 
s 01516047894537 07.09.2016 01516047894537 08.09.2016 
s 01516047894538 07.09.2016 01516047894538 08.09.2016 
n        01516047894539 08.09.2016 

オブジェクトが唯一のIDと日付に基づいて倉庫から移動したかどうかを調べようとしています。私の主な問題は、このすべてのデータが1つのテーブルに格納されていることです。私は上記の簡単な例を作った。まず第一に(s = stayed、m =外出、n =新しい倉庫)。私は移動したすべてのオブジェクトを見つける必要があります。私は実際にとどまったオブジェクトをすべて見つけようとしましたが、NOT INを使用しましたが、新しいオブジェクトを追加することはできません。私の試みです :私は01516047894539 IDをしないのです倉庫内のオブジェクトが移動したか、移動したか、または新しいかどうかを確認します。 2つの変数に基づいて

select y.id 
from warehouse y 
INNER JOIN warehouse t 
ON (y.date != t.date AND y.id= t.id) 

は、私は簡単な方法があると確信しているが、私はそれを参照してくださいカント。

答えて

0


ただこれは、これは私も試したOR y.id = nullの場合、何も返しませんが、私の昔の解決策として、その同じ結果あなた

+0

役立つy.date = nullの条件

select y.id from warehouse y JOIN warehouse t ON y.date != t.date AND y.id= t.id AND y.id= null ; 

を使用します。条件なしで内部結合をチェックしたところ、nullフィールドはまったくなく、おそらく同じテーブルを使用している可能性はありますか? –

+0

内部結合を提供するのではなく、join –

+0

を指定するだけです。これもうまくいきませんが、 "y.id = t.idとy.id = null"という表現も考えられます。決して真実ではありません。 –

関連する問題