Я пытаюсь найти, сколько симулированных доменов есть в таблице согласно таблице электронных писем.
Пример данных:
domains emails
_______ ______
gmail.nl test@google.com
gmail.com test@gmail.com
gmail.uk
Я пытался использовать этот запрос:
SELECT (SELECT COUNT(*) FROM domains
WHERE
right(domain, INSTR(domain, '.')-1)
LIKE
CONCAT('%', right(email, length(email)-INSTR(email, '@')), '%')) as "total",
right(email, length(Email)-INSTR(Email, '@')) FROM emails GROUP BY email
Здесь я сравниваю часть строки из одной таблицы с другой подстрокой из другой таблицы.
Взгляните на этот DBFIDDLE: https://www.db -fiddle.com / f / kdf9iwaEPPz6kMpHqWhZkh / 0
Я получаю 0 в качестве результата для каждой строки, но для gmail это должно быть 3.
Кто-нибудь знает, как это сделать?