Форум: "Базы";
Текущий архив: 2003.03.24;
Скачать: [xml.tar.bz2];
ВнизСортировка Найти похожие ветки
← →
Кролик (2003-03-05 18:41) [0]Как задать сортировку таблицы по определённому полю?
← →
Pat (2003-03-05 18:56) [1]Select ... order by ...
Либо индекс, если для TTable
← →
Кролик (2003-03-05 21:46) [2]A конкретно для TTable? Plz...
← →
Pat (2003-03-05 22:05) [3]при создании таблицы нужно определить вторичные индексы.
Если создаешь таблицу в Database Desktop - Secondary Indexes или как их там...Выбираешь поля, по которым должна осуществляться сортировка...Причем сортировка будет в том порядке, в котором стоят поля..хм..может криво объяснил..пример:
Индекс: fio, name
таблица будет выглядеть примерно так:
Ахренегознаеткакаяфимилия
Иванов Алексей
Иванов Иван
Иванов Максим
Петров Петр
Петров трактор-петрович
Думаю, понятно объяснил.. :-)))
← →
MsGuns (2003-03-05 22:19) [4]Сортировка ТАБЛИЦЫ может быть осуществлена единственным способом - через первичный ключ (PRIMARY KEY), определяемый на этапе создания (для Парадокса - и реструктурировании) таблицы.
И то это не есть физическая последовательность записей на диске !
Если же надо УПОРЯДОЧИТЬ записи для ОТОБРАЖЕНИЯ (например, в гриде), используются методы, указанные Pat © (05.03.03 18:56)
← →
line (2003-03-05 23:35) [5]>MsGuns ©
Фуфло!
Первичный ключ нужен для поиска записей, а при сортировки он не используется.
Пример: Taблица - MainTable (название таблицы)
Поля - F, I
Query1.Active:=False;
Query1.SQL.Clear;
Запрос на сортировку - Query1.SQL.Add("select F,I From MainBase order by F");
Query1.Active:=True;
Не забудь связать TQuery c таблицей (Query1.DataBaseName - место расположения таблицы на компе).
Сортировка по убыванию - тоже самое, только в запросе добавишь "Desc" после "order by F"
← →
line (2003-03-05 23:42) [6]На крайняк, можешь использовать индексы для более быстрой сортировки
← →
Johnmen (2003-03-05 23:49) [7]>line
Хорошие ответы, только, как минимум, уже повторяют сказанное, как максимум, просто не по делу...(Кролик (05.03.03 21:46) A конкретно для TTable?)
← →
MsGuns (2003-03-05 23:50) [8]>line (05.03.03 23:35)
>MsGuns ©
>Фуфло!
>Первичный ключ нужен для поиска записей, а при сортировки он не используется
Вот эта фраза и есть фуфло и говорит о непонимании механизма работы Рарадокс. Если индекс не используется явно (не подключен) и в таблице есть первичный ключ, то в каком порядке записи будут представлены юзером ? В произвольном ?
Ты путаешь понятие "сортировааный" и "упорядоченный", что в применении к БД вообще-то не одно и то же. Если под словом "сортированный" понимать ФИЗИЧЕСКИЙ порядок следования записей или их идентификаторов (ключей и индексов), то упорядочен обычно предоставляемый клиенту КУРСОР.
Указанный тобой способ OrderBy страдает одним недостаком - рез.НД не есть редактируемый.
← →
Johnmen (2003-03-05 23:57) [9]>MsGuns © (05.03.03 23:50)
Добавлю лишь, что первичный ключ это по сути уникальный индекс.
← →
line (2003-03-06 01:01) [10]Создание первичного ключа необходимо, но индекс для поля F для его дальнейшей сортировки не является необходимостью!
В нашем случае предполагается создание ключа явно не для F
Name := "";
Fields:="N";
Options := [ixPrimary];
т.к. есть возможность повторения полей F
если я неправ то заранее извиняюсь
Непонял фразу "рез.НД " - что хотел сказать?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.03.24;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.009 c