![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите с запросом [D6, dBase, FoxPro]
rel_ © (2003-10-16 10:02:00)
В локально таблице (dBase) есть поле, первые цифры которого число, а остальные - буквы (или любые произвольные символы).
Например:
321с
12б
12а
321б
Как энто хозяйство отсортировать (желательно в запросе) сначала по цифре, а затем по символу.
Результат:
12а
12б
321б
321с
Johnmen (2003-10-16 15:57:00) [1]
>rel_ (16.10.03 15:06)
>to Johnmen © А мы что, о программировании разговариваем ????
Не похоже... А похоже, что об истинной и ложной вере. И ее влиянии на наши знания. Но тогда причем здесь cast ???
:)))
rel_ (2003-10-16 15:06:00) [2]
to Johnmen © А мы что, о программировании разговариваем ????
Johnmen (2003-10-16 11:37:00) [3]
>rel_
Слова "вроде", "кажется", "надеюсь" и т.п. не относятся к программированию.
:)
rel_ (2003-10-16 10:51:00) [4]
aVast ©
>>Вроде правильно, при условии, что функция cast() работает именно так.
Я очень на это надеюсь (поэтому и спросил) - потестировал на всём, чём только можно.
>>А from сознательно опущен?
Ну, кажется сознательно ?!
Dionys (2003-10-16 10:49:00) [5]
SELECT CAST(<поле> AS INTEGER) AS i, <поле>
FROM <таблица>
ORDER BY i, <поле>
aVast (2003-10-16 10:46:00) [6]
to rel_
>> Боюсь, что Вы не совсем правы
Согласен
>> я написал следующее - вроде сработало. Посмотрите, правильно ли написал
>>select anyField, cast(anyField) as numField
>>order by numField, anyField
Вроде правильно, при условии, что функция cast() работает именно так.
А from сознательно опущен?
rel_ (2003-10-16 10:37:00) [7]
Anatoly Podgoretsky ©
смысл я понимаю (кажется): в одно поле вытащить численную часть, а в другую - символьную (но как - именно в запросе)???
я написал следующее - вроде сработало. Посмотрите, правильно ли написал
select anyField, cast(anyField) as numField
order by numField, anyField
просто cast(anyField) обрубает все символы и оставляет число, например: 123 - абв переводится в 123
Если не трудно, ответьте, правильно ли я сделал : во всех ли случаях будет энто отрабатываться ???
Anatoly Podgoretsky (2003-10-16 10:30:00) [8]
Надо создать специальное поле (одно или два) и уже по нему (ним)делать сотртировку
rel_ (2003-10-16 10:15:00) [9]
to aVast ©
Боюсь, что Вы не совсем правы, т.к. такой запрос отработает именно так
Результат:
1
10
100
11
2
и т.д.
т.е. для числовой части рез-т будет неверен.
aVast (2003-10-16 10:08:00) [10]
select Field1 from table
order by Field1