Да никак не пробую. Не знаю с какой стороны подойти. Во второй таблице 10 миллионов записей и в первой миллион. Каждую секунду по 10 новых записей добавляется. Моих базовых познаний в mySQL явно не достаточно.
create table t1 (
id int unsigned primary key,
name char(200) not null
);
create table t2 (
id int unsigned primary key,
id_t1 int unsigned not null,
date int unsigned not null
);
insert into t1 values
(1, 'a'),
(2, 'b'),
(3, 'c'),
(4, 'delete me'),
(5, 'e'),
(6, 'f'),
(7, 'g'),
(8, 'h'),
(9, 'i'),
(10, 'j');
insert into t2 values
(1, 1, 100),
(2, 2, 101),
(3, 3, 102),
(4, 4, 99),
(5, 5, 105),
(6, 6, 106),
(7, 7, 107),
(8, 8, 108),
(9, 9, 109),
(10, 10, 110),
(11, 1, 22),
(12, 2, 1000);
На join сделал вот такой конструкт:
SELECT t1.id
FROM t1
LEFT OUTER JOIN t2 ON t1.id = t2.id_t1
WHERE t2.date < 100
Возвращает:
4
1
Единица пролазит потому что в t2 есть строка (11, 1, 22). Но там же есть строка (1, 1, 100), говорящая о том, что "1" мне в выборке не нужен. Как доработать запрос, чтобы проверялось это условие - ума не приложу.