みんなおはよう;
私は次の表を持っています
Date Duration COT TD RID
6/26 30 PT OT 1
6/26 15 OT PT 1
6/27 60 PT OT 1
6/27 60 OT PT 1
6/28 15 SS MM 1
6/28 30 SS MM 1
6/28 15 MM SS 1
6/28 30 MM SS 1
私がやろうとしているのは、以下が当てはまるテーブル自体に参加してレコードをプルすることです:
- T1.TD = T2.COT
- T1.COT = T2.TD
- T1.Duration <> T2.Duration
- T1.Date = T2.Date
- T1.RID = T2.RID
T1 と T2 は同じテーブルです。私がこれまでに持っているものは次のとおりです。
SELECT *
FROM T1
WHERE NOT EXISTS (SELECT 1 FROM T2
WHERE T1.Date = T2.Date
AND T1.COT = T2.TD
AND T1.TD = T2.COT
AND T1.RID = T2.RID
AND T1.Duration = T2.Duration)
2行がその基準を満たしているため、明らかに上記は2行を取得します。しかし、私は本当にテーブルから単一の行を取得したいだけです. これを行う方法はありますか、それとも別の方法がありますか?
編集:追加の行を追加しました-どれも選択してはいけません。6/28 に一致しない行がありますが、それらは一致します。行 1 と 3、2 と 4 は 6/28 に一致するため、最終的なデータセットから制限する必要があります。つまり、RID の日に一致するレコードがある場合は、それらを選択しないでください。