кластерный индекс - это когда записи таблицы перестроены
в порядке индексируемых столбцов. Приводит к тому, что при любом
insert/update/delete индекс или становится невалидным (несортированным),
или приводит к перестройке таблицы. Так что это если и используется,
то только для справочников, и то для специфических целей.

Если я сделаю кластеный индекс по полю Name, а потом выберу записи простым SELECT * FROM без всякого, разве они не будут выданы мне уже отсортированными по Name? Если нет, тогда мне не понятно почему, а если да, то это те же яйца, только в профиль.


я тебе попытался объяснить, что в SQL нет сортировок по умолчанию.
SQL оперирует множествами. отсортировать можно только конечное множество.

Если таки кластерный индекс сортирует, то получается что и его надо запретить ;-)

ты мозги тут не пудри :-) я понимаю, что инструменты всякие выводят
таблицы и view отдельно. Но по факту - это одно и то же.
Если бы ты не мог по метаданным отличить одно от другого, то никогда
бы и не узнал, view это или таблица, если бы не сам ее создавал
или комментировал.

А какая мне разница таблица это или вью в конце концов? Если я не буду иметь исходников, то я также никогда не узнаю про то что есть индекс по выражению это раз. Во вторых ну не устроила меня сортировка, и что с того? Напишу новый ORDER BY и пересортирую. Где тут отличия представления и таблицы всплывают?

Ответить