Я имел ниже запроса, работающего в mysql 4.1, но не делаю в 5,0:
SELECT * FROM email e, event_email ee
LEFT JOIN member m on m.email=e.email
WHERE ee.email_id = e.email_id
Ошибка: 1054 (Неизвестный столбец 'e.email' в 'на пункте')
Вы можете ссылаться только на таблицы, ранее связанные с предложением JOIN
в предложении ON
.
SELECT *
FROM email e
JOIN event_email ee
ON ee.email_id = e.email_id
LEFT JOIN
member m
ON m.email = e.email
Это можно проиллюстрировать лучше, если я заключу в скобки ANSI JOINS
в исходном запросе:
SELECT *
FROM email e,
(
event_email ee
LEFT JOIN
member m
ON m.email = e.email
)
WHERE ee.email_id = e.email_id
Как видите, нет источника для e.email
в круглых скобках: поэтому решить не удалось.