Главная страница
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.054 c
4-1075366573
barby
2004-01-29 11:56
2004.04.04
Удаление непустой директории


6-1075054663
MadGhost
2004-01-25 21:17
2004.04.04
что значат флаги в TCP? ?????


1-1079462465
Шнур
2004-03-16 21:41
2004.04.04
Компоненты


3-1076922582
чайник1
2004-02-16 12:09
2004.04.04
Как переиндексировать таблицы


7-1075097747
mich@el
2004-01-26 09:15
2004.04.04
Определение занятости файла