|
|
|
UNE INDEX для VIEW (выбор индекса в представлении)
|
|||
|---|---|---|---|
|
#18+
`view` = обычное представление SELECT * FROM `view` USE INDEX (`PRIMARY`) WHERE .... Получаю ошибку: #1176 - Key 'PRIMARY' doesn't exist in table 'view' Если запрос делать так: SELECT * FROM `view` WHERE ...., интерпретатор выбирает не тот индекс. Как же при выборке с использованием VIEW указать предпочтительный индекс? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2016, 20:54 |
|
||
|
UNE INDEX для VIEW (выбор индекса в представлении)
|
|||
|---|---|---|---|
|
#18+
Лучше вообще VIEW не использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2016, 21:35 |
|
||
|
UNE INDEX для VIEW (выбор индекса в представлении)
|
|||
|---|---|---|---|
|
#18+
Если кому то будет интересно, то ключи не использовались из-за большого условия. На допустимый максимальный перебор условий для использования ключа влияет параметр max_seeks_for_key. Настроив это параметр представление начнет работать с необходимыми ключами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2016, 21:54 |
|
||
|
UNE INDEX для VIEW (выбор индекса в представлении)
|
|||
|---|---|---|---|
|
#18+
Как использовать USE INDEX при вызове представления - решения не нашел. Споры о том, для чего придуманы представления и стоит ли их использовать - за рамками данной темы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2016, 21:57 |
|
||
|
UNE INDEX для VIEW (выбор индекса в представлении)
|
|||
|---|---|---|---|
|
#18+
ArtemeeyКак использовать USE INDEX при вызове представления - решения не нашел.Представление вообще-то не индексировано. В принципе. Так что нет смысла пытаться использовать то, чего нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2016, 19:17 |
|
||
|
UNE INDEX для VIEW (выбор индекса в представлении)
|
|||
|---|---|---|---|
|
#18+
Akina, Представление строится на данных таблиц. Эти таблицы имеют индекс. При вызове представления используются индексы соответствующих таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2016, 22:23 |
|
||
|
UNE INDEX для VIEW (выбор индекса в представлении)
|
|||
|---|---|---|---|
|
#18+
ArtemeeyПредставление строится на данных таблиц. Эти таблицы имеют индекс. При вызове представления используются индексы соответствующих таблиц. Даже в подзапросах индексы в подавляющем большинстве случаев используются только внутри подзапроса. А если вьюв не будет раскрываться в тексте - то индекс гарантированно будет использоваться исключительно внутри. И даже хуже - если в подзапросе мог бы использоваться покрывающий индекс, во внешнем запросе будет гарантированное сканирование таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.01.2016, 22:35 |
|
||
|
UNE INDEX для VIEW (выбор индекса в представлении)
|
|||
|---|---|---|---|
|
#18+
Akina, Сейчас VIEW использует индекс правильно. Выше я написал, что дело было в настройке max_seeks_for_key, влияющая на использования индекса в условиях вида `a` = '...' OR `a` = '...' А так же вида: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2016, 03:07 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39142923&tid=1832311]: |
0ms |
get settings: |
9ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
193ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
68ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 559ms |

| 0 / 0 |
