Вниз
Скачать: CL | DM;

Сортировка   Найти похожие ветки 

← →
Кролик   (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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.012 c
1-76495
avet
2003-03-12 15:13
2003.03.24
в переменной записано название процедуры


1-76508
Ricky-Ticky-Tavy
2003-03-12 09:02
2003.03.24
Как в Delphi открыть документ MS-Word и перейти к к.-л. закладке?


14-76614
Anatoly Podgoretsky
2003-03-07 08:14
2003.03.24
Именинники 7 марта


3-76334
Кролик
2003-03-05 18:41
2003.03.24
Сортировка


14-76644
gn
2003-03-07 08:43
2003.03.24
коты




   Наверх