Я хочу найти количество активных уникальных идентификаторов в конкретном диапазоне дат
CREATE TABLE tbl_tmp
(
id integer,
start_dt date,
end_dt date,
status varchar(8)
);
INSERT INTO tbl_tmp VALUES (30, '2015-11-22','2015-11-22', 'Active');
INSERT INTO tbl_tmp VALUES (30, '2015-11-23', '2015-12-06', 'Active');
INSERT INTO tbl_tmp VALUES (40, '2015-11-26', '2015-11-26', 'Active');
INSERT INTO tbl_tmp VALUES (40, '2015-11-27', '2016-02-23', 'Active');
INSERT INTO tbl_tmp VALUES (30, '2015-12-06', '2015-12-07', 'Inactive');
INSERT INTO tbl_tmp VALUES (40, '2016-02-24', '2016-08-04', 'Active');
Ожидаемый результат:
если предложение where в дату начала> = '2015-11-22 'и end_date <=' 2015-12-05 'количество уникальных идентификаторов должно быть 2, так как 30 и 40 активны в этом диапазоне времени </p>
, если предложение указано в дате начала> =' 2015-11-22 'и end_date <=' 2015-12-10 'количество уникальных идентификаторов должно быть 1, потому что 30 неактивно, начиная с' 2018-12-07 '</p>