2016-07-04 4 views
1

У меня есть этот запрос MySQL, который правильно выбирал данные, пока я не присоединился к другой таблице (afk_measures_childs) и не дал мне эту ошибку: «# 1054 - Неизвестный столбец« md.org_date »в разделе« on » "Неизвестный столбец в 'on clause'

select md.id,md.value,md.text_ar,md.photo,md.created_date org_date,mc.ar_title from afk_map_data md,afk_measures_childs mc 
INNER JOIN 
(SELECT id,max(created_date) max_date from afk_map_data) t 
on 
t.max_date = md.org_date 
WHERE 
md.measures_child_id = mc.id 
AND 
md.map_id = 1 
AND 
md.state_id = 1 
AND 
md.measures_id= 1 
order by md.id 

Любая помощь будет оценена

ответ

0

не смешивайте старые неявный и новый явный синтаксис объединения.

select md.id,md.value,md.text_ar,md.photo,md.created_date org_date,mc.ar_title 
from afk_map_data md 
JOIN afk_measures_childs mc on md.measures_child_id = mc.id 
JOIN 
(
    SELECT id, max(created_date) max_date 
    from afk_map_data 
) t on t.max_date = md.org_date 
WHERE md.map_id = 1 
AND md.state_id = 1 
AND md.measures_id= 1 
order by md.id 
+0

:(жаль, но она по-прежнему дает мне ту же ошибку –

+0

Сво работает идеально подходит, спасибо много, жаль его была моя вина я просто удалил alias org_date и работал так, как мне хотелось –

0

Вы не правильно установить внутреннее соединение с псевдонимом

select md.id,md.value,md.text_ar,md.photo,md.created_date org_date, mc.ar_title 
from afk_map_data md 
INNER JOIN afk_measures_childs mc on md.measures_child_id = mc.id 
INNER JOIN 
    (SELECT id,max(created_date) max_date from afk_map_data) t 
    on t.max_date = md.org_date 
where 
md.map_id = 1 
AND 
md.state_id = 1 
AND 
md.measures_id= 1 
order by md.id 
Смежные вопросы