0
Наше приложение Java работает очень медленно.MYSQL Slow Query
Это относится к различным причинам, одним из главных может быть то, что код MySQL в приложении использует две разные таблицы для получения этих данных, делая соединения. Кто-нибудь может посоветовать, как этот запрос может быть написан лучше для производительности?
SELECT DISTINCT uniqueId
FROM advertisementmodule
JOIN advertisement ON advertisementmodule.idAdvertisement = advertisement.idAdvertisement
JOIN advertisementschedule ON advertisement.idAdvertisementSchedule = advertisementschedule.idAdvertisementSchedule
JOIN adschedulegroup ON advertisementschedule.idAdScheduleGroup = adschedulegroup.idAdScheduleGroup
WHERE adschedulegroup.publisherCode = 'ABC';
SELECT *
FROM taurustour
JOIN searchthemestaurus
WHERE uniqueId IN (
'18538'
,'17142'
,'11248'
,'18458'
)
AND air IS true;
Что говорит 'explain select ...' для вышеуказанного запроса. Поделитесь результатом с вопросом. –
«Возможно, одна из главных причин» - вы уверены? Процитировать Дональда Кнута: «Преждевременная оптимизация - это корень всего зла». Профилируйте код, чтобы убедиться, что вы оптимизируете то, что нужно оптимизировать. Если задержка падает на запрос - столбцы, которые вы присоединяете к индексированию? – copeg
Какая СУБД? sqlserver - это не то же самое, что mysql. –