|
Хэш по кластерному уникальному индексу - зачем?
|
|||
---|---|---|---|
#18+
Есть сервер: Код: sql 1.
Microsoft SQL Server 2017 (RTM-CU16) (KB4508218) - 14.0.3223.3 (X64) Jul 12 2019 17:43:08 Copyright (C) 2017 Microsoft Corporation Enterprise Edition: Core-based Licensing (64-bit) on Windows Server 2019 Datacenter 10.0 <X64> (Build 17763: ) (Hypervisor) Есть таблица: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
И есть запрос: Код: sql 1. 2. 3. 4. 5. 6. 7.
Непонятно, зачем сервер считает хэш? Что мешает ему просто пройти по кластерному индексу сверху вниз, откладывая каждую новую дату куда-нибудь? К тому же, даты там лет за десять, то есть их не больше чем 4 тысячи уникальных. Какой смысл считать хэш? И зачем в конце сортировка? Индекс же уже отсортирован по дате... _____ * powered by Gerros ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2020, 00:04 |
|
Хэш по кластерному уникальному индексу - зачем?
|
|||
---|---|---|---|
#18+
Gerros, Непонятно, зачем сервер считает хэш? хэш он считает потому что выбирает индекс для сканирования не кластеризованный а тот который относится к первичному ключу Что мешает ему просто пройти по кластерному индексу сверху вниз, откладывая каждую новую дату куда-нибудь? сколько строк в таблице и сколько уникальных дат? и что там со статистикой на таблице? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2020, 02:38 |
|
Хэш по кластерному уникальному индексу - зачем?
|
|||
---|---|---|---|
#18+
Gerros Что мешает ему просто пройти по кластерному индексу сверху вниз, откладывая каждую новую дату куда-нибудь? Сравните стоимость исходного запроса и Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2020, 10:01 |
|
Хэш по кластерному уникальному индексу - зачем?
|
|||
---|---|---|---|
#18+
felix_ff, invm, всё правильно говорите. Я в плане выполнения не заметил что он по первичному ключу пошёл. Фактически индекс первичного ключа для данного запроса является покрывающим. В реальности таблица там довольно широкая, и сканирование кластерного ключа занимает гораздо больше времени, чем проход по первичному ключу. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.11.2020, 18:47 |
|
|
start [/forum/topic.php?fid=46&msg=40016741&tid=1685430]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
188ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 294ms |
0 / 0 |