あなたの最善の策は、別々のSQLにそれらを打破するため、二回この表で行くことです。一度PE
ため、再びDE
とのために:
今、あなたはあなたがお互いに対してテストすることができて、結果セットに対して持っている
SELECT name FROM table WHERE status = 'DE' and start_date = '2016-12-01' AND end_date = '2016-12-28';
SELECT name FROM table WHERE status = 'PE' and start_date = '2017-02-01' AND end_date = '2017-02-28';
:
SELECT name
FROM
(SELECT name FROM table WHERE status = 'DE' and start_date = '2016-12-01' AND end_date = '2016-12-28') t1
INNER JOIN (SELECT name FROM table WHERE status = 'DE' and start_date = '2016-12-01' AND end_date = '2016-12-28') t2 ON t1.name = t2.name;
あなたが実際に選択されていませんので、
良く行うことが
SELECT name
FROM table t1
WHERE
status = 'DE' and
start_date = '2016-12-01' AND
end_date = '2016-12-28' AND
name IN (SELECT name FROM table t2 WHERE t1.name = t2.name status = 'PE' and start_date = '2017-02-01' AND end_date = '2017-02-28');
:二派生テーブル、あなたは同じロジックを使用して、同様に相関サブクエリでこれで行くことができます。