![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Траблы с LEFT JOIN [MySQL]
Шмелъ © (2008-04-16 10:44:00)Столкнулся с проблемой следующего характера...
переехали на новую 5-ю версию mysql и отвалились часть запросов, в частности запрос
SELECT app.*, pt.*, es.name as 'pr.rad_engine_size'
FROM application as app, part_type as pt
LEFT JOIN engine_size as es ON app.engine_size_id=es.id
WHERE app.part_type_id=pt.id
стал выдавать: Unknown column 'app.engine_size_id' in 'on clause'
раньше все работало ОК
в чем причина, как решить эту проблему?
easy (2008-04-16 10:59:00) [1]SELECT app.*, pt.*, es.name as 'pr.rad_engine_size'
FROM (application as app, part_type as pt)
LEFT JOIN engine_size as es ON app.engine_size_id=es.id
WHERE app.part_type_id=pt.id
Johnmen (2008-04-16 10:58:00) [2]Для начала использовать только явные соединения, а не мешать в кучу явные и неявные.
Т.е.
SELECT app.*, pt.*, es.name as 'pr.rad_engine_size'
FROM application as app, part_type as pt
JOIN part_type as pt ON app.part_type_id=pt.id
LEFT JOIN engine_size as es ON app.engine_size_id=es.id
Шмелъ (2008-04-16 10:56:00) [3]А ну усе понял, криво написан запрос,
SELECT app.*, pt.*, es.name as 'pr.rad_engine_size'
FROM application as app
LEFT JOIN engine_size as es ON app.engine_size_id=es.id
, part_type as pt
WHERE app.part_type_id=pt.id
типа LEFT JOIN должен идти сразу за таблицей с которой связывается
Шмелъ (2008-04-16 10:51:00) [4]
> А если явно поля указать?
Пробовал, тоже самое...
Ega23 (2008-04-16 10:46:00) [5]
app.*, pt.*
А если явно поля указать?