Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.24;
Скачать: 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 вся ветка

Текущий архив: 2003.03.24;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.02 c
1-76412
Igor-san
2003-03-06 16:37
2003.03.24
Как прочитать путь из ярлыка,например, Word XP ?


14-76628
Visit
2003-03-07 10:09
2003.03.24
Замена курсора


14-76631
Jeer
2003-03-06 12:38
2003.03.24
Дамы ! С Праздником Вас


1-76430
[BAD]Angel
2003-03-07 22:50
2003.03.24
Люди, помогите с реестром! (СРОЧНО)


14-76594
Andrej
2003-03-07 11:30
2003.03.24
xProgressMessage