|
![]() |
#1 |
Moderator
|
Говоря о сути проблемы: Чтобы там не писалось в best practice, на мой взгляд, перечисление выбираемых полей в select имеет смысл только в двух случаях:
1. Есть покрывающий индекс (и мы боремся за скорость какого-то очень часто выполняющегося запроса). 2. Массово выбираем данные из какой-то очень разбухшей таблицы (то есть - больше 20-25 полей и выбираем тысячи, а не десятки записей). Во всех остальных случаях - экономия нескольких килобайт трафика между AOS и сервером БД не покроет потенциального гемора с попыткой доступа к непрочитанному полю при быстром латании кода. Ну и конечно - если ни одно поле из таблицы вообще не используется - ей самое место в exists join или в join tableid from table. |
|
![]() |
#2 |
Участник
|
Цитата:
большой выигрыш кстати дает перечисление полей при наличие в таблице полей с типом контейнер(они хранятся в бд отдельно от строк, и запрос к ним резко снижает скорость выборки), но это уже косяки проектирования |
|
![]() |
#3 |
Участник
|
Цитата:
По идее план запроса не должен ухудшиться - все равно по индексу пойдет перебор. |
|
|
За это сообщение автора поблагодарили: trud (2). |
![]() |
#4 |
Модератор
|
Цитата:
![]()
__________________
-ТСЯ или -ТЬСЯ ? |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|