Я пытаюсь запросить 3 в основном несвязанные таблицы.Отношение для всех трех - один столбец (поле адреса электронной почты).Я создал 'union all' и извлек письмо по электронной почте из всех трех таблиц, а затем сгруппировал их в конце, чтобы убедиться в отсутствии дубликатов (я тоже пробовал union).
Моя проблема в том, что все работаетхорошо, но мне нужно знать, является ли каждый адрес электронной почты 1, 0 или NULL в первой таблице.Я попытался вытянуть столбец, а затем добавить "" "Col1" в другие таблицы (избежать ошибки 1222, сопоставьте столбцы).Я могу сделать это, но данные из таблицы 1 перезаписываются «ничто» из таблицы 2, а затем снова ничем в таблице 3.
Вот запрос:
SELECT * FROM (
SELECT email AS emails, COUNT(email) AS qty, '' AS custCountry, '' AS custID, '' AS cName, active AS newsletter
FROM newsletter
WHERE email != ''
GROUP BY email
UNION ALL
SELECT email AS emails, COUNT(email) AS qty, '' AS custCountry, '' AS custID, '' AS cName, '' AS newsletter
FROM orders
WHERE email != ''
GROUP BY email
UNION ALL
SELECT email AS emails, COUNT(email) AS qty, country AS custCountry, customerID AS custID, countries.name AS cName, '' AS newsletter
FROM customers
LEFT JOIN countries ON customers.country = countries.zoneID
WHERE email != ''
GROUP BY email
) AS newtable
GROUP BY emails
ORDER BY qty DESC
Это работает, пока ядобавьте «активный» столбец, после чего он перезаписывает все, что было в активном столбце, ни с чем.Мне нужна там третья таблица, так как она включает данные о местоположении, которые мне нужно сохранить.Если бы я поставил первую таблицу последней, это дало бы мне «активный», но перезаписал бы столбцы местоположения.
Я не профессионал в MySQL (взгляните!), Поэтому любая помощь очень ценится.