LINUX.ORG.RU

История изменений

Исправление Loki13, (текущая версия) :

Никогда не используй SELECT в WHERE. Вынеси его в JOIN.

Что-то вроде

SELECT id_parent FROM table1 AS t 
INNER JOIN SELECT MAX(date) date, id_parent FROM table1 t_date ON t_date.id_parent = id_parent
WHERE id_status = 2

Писал наощупь, синтаксис мог и налажать. Ну и за оптимальность тоже не скажу, но это точно лучше, чем подзапрос в WHERE.

Исходная версия Loki13, :

Никогда не используй SELECT в WHERE. Вынеси его в JOIN.

Что-то вроде

SELECT id_parent FROM table1 AS t INNER JOIN SELECT MAX(date) date, id_parent FROM table1 t_date ON t_date.id_parent = id_parent WHERE id_status = 2

Писал наощупь, синтаксис мог и налажать. Ну и за оптимальность тоже не скажу, но это точно лучше, чем подзапрос в WHERE.