Ответы Mail.ru: Какой SQL запрос будет быстрее из ниже перечисленных?

Александр (20823) 1 месяц назад

По идее быстрее выполнится первый. Хотя это зависит от СУБД и от индексации столбца. Если твой столбец user_id проиндексирован, тогда не будет сканирования таблицы и СУБД вернет тебе страницу с твоими данными, тем более что ты запрашиваешь LIMIT 1. С функцией COUNT тоже есть свои нюансы. Без использования индексации и статистики, COUNT будет сканировать каждую строку, что достаточно долго. В любом случае фукнция COUNT будет "считать" эти строки, что с оптимизацией, что без. Так что первый запрос должен выполнится быстрее.

Jurijus Zaksas (427995) 1 месяц назад

Ответ очень простой: зависит от конкретного плана, составленного для каждого конкретного запроса конкретной СУБД.

>Я долго размышлял на эту тему, спрашивал у нейросети и проводил тесты.
А ты не тесты проводи, ты планы смотри.