У меня есть этот запрос, который показывает мне последний id
по id_units
, в зависимости от даты.Оптимизировать запрос с MAX (id)
Мой запрос:
SELECT max(swg.id) AS id
FROM swg
WHERE swg.status != 0
AND sg.dateswg <= TIMESTAMPADD(DAY,(6-WEEKDAY('2015-12-28')),'2015-12-28')
GROUP BY swg.id_units
ORDER BY swg.id;
Запрос возвращает более 2000 записей, я думаю, что есть способ, что я могу производительность этого запроса.
Я пытаюсь производительность моего запроса, как это:
SELECT id
FROM (SELECT * FROM swg WHERE status != 0 AND dateswg <= TIMESTAMPADD(DAY,(6-WEEKDAY('2015-12-28')),'2015-12-28') ORDER BY id_units, id desc) x
GROUP BY id_units;
Это работает, но я хотел бы знать, если есть другой способ улучшить его
Regard!
У вас есть какой-либо индекс? –
Сделайте 'ORDER BY id' вместо этого, чтобы сделать запрос правильным! – jarlh
Нет У меня нет @Prdp –