このようなOracle sqlクエリがあります
SELECT *
FROM test
WHERE 1 =1
AND req_no IN
(SELECT req_no
FROM test
WHERE date1 IS NOT NULL
AND date1 BETWEEN '1-JUN-12' AND '30-JUN-12'
)
問題は、WHERE
条件が適切に機能しないことです。上記の条件で「date1」が NOT NULL の場合、「FROM」と「TO」の日付の間で「date1」をチェックしたいと思います。
*編集*
サンプルテーブルデータを追加しました
Test table
From date: 1-JUN-2012
To date: 30-JUN-2012
record date1 date2 date3
1 12-JUN-2012 13-JUN-2012 12-JUN-2012
2 null null 12-JUN-2012
3 null 3-JUN-2012 null
4 12-JUN-2012 null null
5 12-JUN-2012 13-JUL-2012 12-JUN-2012
6 null null null
上記のレコードでは、6 番目のレコードではなく、レコード番号 = 1,2,3,4 が返されます。