2016-07-04 14 views
1

Ich habe diese MySQL-Abfrage, die Daten richtig ausgewählt, bis ich eine andere Tabelle (afk_measures_childs) beigetreten ist und gibt mir diesen Fehler: "# 1054 - Unbekannte Spalte 'md.org_date' in 'on-Klausel ' "Unbekannte Spalte in 'On-Klausel'

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 

Jede Hilfe wird

Antwort

0

nicht die alte implizite und die neue explizite Join geschätzt werden Sie Syntax mischen.

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

:(sorry, aber es gibt mir immer noch den gleichen Fehler –

+0

Seine Arbeit perfekt, vielen Dank, sorry seine mein Fehler war ich gerade hat den Alias ​​org_date entfernt und funktioniert wie ich wollte –

0

Sie haben nicht richtig eingestellt eine innere Verknüpfung mit alias

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 
Verwandte Themen