Кажется, вы каждый раз ищете четыре записи. Вы можете использовать оконные функции:
select t.*
from (select t.*,
count(*) over (partition by id, datetime) as cnt
from t
) t
where cnt = 4;
Если вы не знаете количество каналов, вы можете использовать:
select t.*
from (select t.*,
count(*) over (partition by id, datetime) as cnt,
count(distinct channel) over () as num_channel
from t
) t
where cnt = num_channel;