2016-05-23 7 views
2

私は3つのテーブル(領収書、領収書追加情報、ショップ)を持っています。すべてのお店が含まれている、しかし、私が持っていたお店、そこにあるかどうかを確認したい、Oracle - 日付の範囲内のデータがあるかどうか確認してください

select * 
from receipts r 
join receipt receiptaddinfo ri on r.receiptid=ri.receiptid and r.shop=ri.shop 
join shops s on ri.shop=s.shop and shoptype=0 
where ri.creationtime >= '2016-05-19 00:00:00' 
order by ri.creationtime desc 

テーブルのお店:私は宣言した日付以降のすべてのお店からのすべての領収書を私にデータを提供し、選択してい宣言された日付以降の「販売/領収書」はありません。誰かが助けてくれましたか?

答えて

1

次のSQL文を試すことができます。

SELECT * from shops s 
WHERE s.shoptype = 0 
AND NOT EXISTS 
(SELECT 1 
FROM receipts r, 
     receiptaddinfo ri 
WHERE r.receiptid = ri.receiptid 
AND r.shop = ri.shop 
AND ri.shop = s.shop 
AND ri.creationtime >= '2016-05-19 00:00:00') 
+0

おかげで、私は欲しかったものをくれました。 – headder

関連する問題