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

Вниз

Как отсортировать данные???   Найти похожие ветки 

 
Sirus ©   (2002-11-12 07:04) [0]

Привет Мастера...
Есть вопрос: Как можно отсортировать результат запроса по полю текстового типа ( VARCHAR)???
Есть поле типа VARCHAR там встречаются данные числового типа...
Так вот при сортировке типа ORDER BY FIELD получаю что-то типа ( 1, 10, 2, 25, 3, 4, 5, 51) и т.д. то есть цифры сортируются как строки... а мне нужна сортировка типа ( 1, 2, 3, 4, 5, 10, 25, 51)... Как можно организовать???


 
Alexandr ©   (2002-11-12 07:32) [1]

select cast(tvoyvarchar as integer)
from....
order by 1


 
VAleksey ©   (2002-11-12 07:57) [2]

если данные только "встречаются" то никак


 
Sirus ©   (2002-11-12 08:28) [3]

Поле хранит данные квартир... тип VARCHAR(4)
ну в смыслу там встречаются данные типа 121 и 121А...
При использовании CAST ошибки будут???


 
Andriano ©   (2002-11-12 08:35) [4]

Придётся добавлять незначущие нули перед числами (Это на стороне сервера). Или делать локальную сортировку на стороне клиента.


 
Reindeer Moss Eater   (2002-11-12 08:40) [5]

Или написать UDF


 
Sirus ©   (2002-11-12 11:47) [6]

>Reindeer Moss Eater (12.11.02 08:40)
>Или написать UDF

А как его написать и использовать??? Хотя бы как его использовать???


 
Reindeer Moss Eater   (2002-11-12 11:49) [7]

http://www.ibase.ru/devinfo/udf_ok.htm


 
Reindeer Moss Eater   (2002-11-12 11:59) [8]

function StrValue(sz: PChar):integer; cdecl; export;
var aStr:string; i:integer;
begin
aStr:=StrPas(sz);
for i:=Length(aStr) downto 1 do if not (aStr[i] in ["0".."9"]) then Delete(aStr,i,1);
Result:=StrToIntDef(aStr,0);
end;

Select StrValue(Поле_номера_Квартиры), T.* From MyTable T
Order By 1



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
1-93026
Sirus
2002-11-19 11:51
2002.11.28
Можно ли установить Delphi5 и Delphi6 на один компьютер???


3-92918
Gregory
2002-11-11 16:18
2002.11.28
Быстрая работа с БД Paradox


14-93241
CAdept
2002-11-07 14:31
2002.11.28
Elpack


7-93271
zzet
2002-09-29 11:52
2002.11.28
Номер винта.


3-92830
Step[B.M.]
2002-11-12 12:34
2002.11.28
Проблемы с составлением SQL запроса в котором числа Float ...