У меня есть таблица (t1) с адресами электронной почты, пользователями и доменными именами:
email user domain
[email protected] joe123 domain.com
[email protected] sue234 email.net
... ... ...
И еще одна таблица (t2) того, было ли открыто электронное письмо, отправленное на адрес:
Opened Email
0 [email protected]
1 [email protected]
0 [email protected]
... ...
Я хотел бы присоединить t1.domain к t2, но только к доменам, которые встречаются более 100 раз.
Я могу создать таблицу с количеством вхождений
SELECT domain, count(domain) cntDomain
from table1
group by domain
с таким результатом:
domain cntDomain
domain.com 5000
email.net 4300
mybarber.com 67
результирующая таблица будет выглядеть так:
Opened Email domain
0 [email protected] domain.com
1 [email protected] email.net
0 [email protected] other
... ...
но не могу понять соединение (я предполагаю, что это будет левое соединение для создания «другого» значения для редко встречающихся значений) и оператор case, необходимый для соединения значения, если оно встречается более 100 раз, а если не значение ' Другой'.
having count(*) > 100
- person crthompson   schedule 04.11.2014