таблицу в бд (не в запросе)?
https://postgrespro.ru/docs/postgresql/14/sql-cluster
Нет, это принцыпиально невозможно.
Мой ответ не прочитали? https://postgrespro.ru/docs/postgresql/14/sql-cluster
Прочитал. Ещё до своего поста. Свой запостил — чтобы у человека не возникало ненужных иллюзий.
Про CLUSTER уже сказали. Только стоит понимать, что оно отсортировано до первого апдейта,
оно не отсортировано) оно кластеризовано для обееспечения максимально эффективногго доступа к блокам данных при исполььзовании индекса никаких гарантий сортировки это не дает
Таблица всё равно не будет иметь сортировки. Её принцыпиально нет у реляцыонных таблиц. Не бывает. У файлов, в которых хранятся данные — бывает. У btree-индэксов — так почти всегда. У данных, которые передаются по сети — есть. Особенность хранения — не можэт не быть. А у таблиц в РСУБД — нет и быть не можэт. И вон тот коммент топикстартера, между этими нашыми двумя — наглядно показывает, что он этого не понимает. И для его (и читающих того жэ уровня) пользы этот тривиальный факт надо повторять и повтрять, пока не запомнится.
Мне нужно чтобы соседние записи лежали в одних страницах, вставок в таблицу нет.
Да, если вопрос про порядок в heap-файле — то cluster делает именно это.
Кластерній индекс Postgresql не поддерживает?
Дажэ если бы поддержывал -- это не отменяет того, что у таблицы в РСУБД нет и не можэт быть сортировки.
Кластерный индекс это вообще-то именно ОТСОРТИРОВАННАЯ таблица, а не куча.
Вы несёте абсолютную чушь.
Да вы шо? Может с точки зрения Постгрес и чушь, почему и спросил поддерживает ли кластерный индекс. С точки зрения реляциоенных субд кластерный индекс это отсортированная таблица.
Чтож, сойдёмя на том, что у нас различные и никак не совместимые мнения по этому вопросу.
Я понял Кластерных индексов в Постгрес нет, спасибо
Кластерных индэксов в постгресе нет, но это не относится к делу. Поскольку, например, в mysql и mssql -- где они есть -- точно такжэ у таблиц нет и быть не можэт порядка сортировки.
в разных СУБД по-разному. не надо переносить то что принято в одной на другие
кластерный индекс вообще не ограничивает в каком порядке и как будут сканить таблицу, любой эффективный параллелизм обратно всё перемешает
ну не знаю как у мускуля, а в мсскл кластерный индекс - суть отсортироваенная таблица, и на таблице он только один, таблица же без кластерного индекса таки куча
это странное утверждение. А у btree индекса может быть порядок сортировки?
А смысл использовать индекс при скане таблицы?
> С точки зрения реляциоенных субд У реляционных СУБД на это вообще нет никакой "точки зрения" (кроме того, что это несущественная деталь реализации). ;) > кластерный индекс это отсортированная таблица. Кроме шуток — скорее нет (смотря что Вы имели в виду). Кластерный индекс (такое название используется в MS SQL) или Index-Organized Table (Oracle и т.п.) — это способ хранения таблицы в виде b-tree индекса, когда данные таблицы хранятся прямо в листьях, вот и всё.
именно что данные хранятся в индексе .
https://t.me/pgsql/348728 Там чётко сказано про этот случай.
potato - potato какое-то.
Обсуждают сегодня