Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

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

 
WebErr ©   (2004-03-04 16:28) [0]

В общем так:
сортирую грид по полю стрингового типа, но с целыми компонентами, и, о чудо!, он сортирует в следующем порядке: 1, 10, 11, ..., 2, 20, 21, ... Слава богу разобрался, что тип у поля не целый. =)
Вопрос знатокам: как можно стринговое поле отсортировать как integer? Конструкции типа:

select *
from table t
order by t.docno as integer

не предлагать!!!


 
Тимохов ©   (2004-03-04 16:30) [1]


> Вопрос знатокам: как можно стринговое поле отсортировать
> как integer?

1 вариант: перобразовать в integer и отсортировать
2 вариант: дополнить кадую строку слева нулями, так, чтобы все строки стали одинаковой ширины и отсоритровать


 
WebErr ©   (2004-03-04 16:35) [2]


> Тимохов ©   (04.03.04 16:30) [1]
>
> > Вопрос знатокам: как можно стринговое поле отсортировать
>
> > как integer?
>
> 1 вариант: перобразовать в integer и отсортировать
> 2 вариант: дополнить кадую строку слева нулями, так, чтобы
> все строки стали одинаковой ширины и отсоритровать

Первый вариант предпочтительней! :)
Мда... так и знал, что придётся всю чужую таблу перекорёжить во благо отечества!


 
Zacho ©   (2004-03-04 16:38) [3]

3 вариант (разновидность 1-го) : написать свою процедуру сортировки. На самом деле, ничего сложного.


 
Digitman ©   (2004-03-04 16:44) [4]

что за СУБД ? конкретно ?


 
WebErr ©   (2004-03-04 16:51) [5]


> Digitman ©   (04.03.04 16:44) [4]
> что за СУБД ? конкретно ?

IB - Inter Base. Доступ через, например, IBQuery.


 
Zacho ©   (2004-03-04 17:06) [6]

Тогда или 1, или 2.
Я в таких случаях (когда нужно поде именно char или varchar, и при этом чтобы сортировка была как по integer) использую именно 2. Только дополняю не нулями, а пробелами, и делаю это в триггерах.


 
WebErr ©   (2004-03-04 17:54) [7]

Спасибо всем! :)


 
Digitman ©   (2004-03-04 18:09) [8]

select *
from table t
order by UDF_StrToInt(t.docno)



Страницы: 1 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.024 c
3-1078731190
Aldor
2004-03-08 10:33
2004.04.04
Инкремент Primary Key. Как достичь уникальности?


4-1074605528
menart
2004-01-20 16:32
2004.04.04
Диалоговое окошко входа в домен!


11-1059319517
BelchonokH
2003-07-27 19:25
2004.04.04
pstream.free


3-1078931851
Ceval
2004-03-10 18:17
2004.04.04
упорядочить таблицу ...про помоци CheckBox


1-1079673885
Cobalt
2004-03-19 08:24
2004.04.04
Отладка программ