Не работает ORDER BY. Помогите!!!

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Nikos
Местный житель
Сообщения: 577
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Томск

Не работает ORDER BY. Помогите!!!

Сообщение Nikos »

Помогите в цикле вывести записи из таблицы, отсортированные по дате. Почему-то не работает ORDER BY. Я пишу:
_Loop sald6202 where ((1000 == sald6202.kau3)) order by dfact
Выдает синтаксическую ошибку. Предварительно описана таблица:
table struct sald6202(kau3:comp,dfact:date,sum:double);
Что делаю не так?
Nikos
Местный житель
Сообщения: 577
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Томск

Сообщение Nikos »

Вопрос снимается - нашел аналогичную тему.
Nikos
Местный житель
Сообщения: 577
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Томск

Сообщение Nikos »

К сожалению, предложенные варианты или не работают (external) или не подходят (использование индексов), т.к. сортировка может потребоваться как по возрастанию, так и по убыванию. В основном обсуждается сортировка в интерфейсах, мне же нужна именно в цикле - пишу закрытие счетов. Так что, если кто-то подскажет решение, то буду благодарен.
coolibin
Постоянный обитатель
Сообщения: 151
Зарегистрирован: 29 мар 2005, 17:49

Сообщение coolibin »

Нет разницы, где сортируешь, "в интерфейсе" или в цикле. У тебя своя временная таблица - индекс можешь делать какой душе угодно.
Сортировать по индексу можно и в обратном порядке.
Nikos
Местный житель
Сообщения: 577
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Томск

Сообщение Nikos »

Я создаю индекс:
with index (sald03=dfact)
Потом по нему сортирую:
_Loop sald6202(sald03) where (...
А как отсортировать в обратном порядке?
Vek
Постоянный гость
Сообщения: 74
Зарегистрирован: 16 фев 2006, 13:11

Сообщение Vek »

по-моему, вот так with index ( sald03=dfact(desk) )
Nikos
Местный житель
Сообщения: 577
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Томск

Сообщение Nikos »

Нет, так не понимает...
Vek
Постоянный гость
Сообщения: 74
Зарегистрирован: 16 фев 2006, 13:11

Сообщение Vek »

вот пример

table struct tmp
(
name:string[100],
num:longint
)
with index
(
t01=num(desc)
);
Nikos
Местный житель
Сообщения: 577
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Томск

Сообщение Nikos »

Да, так работает (desc<->desk).
Всем большое спасибо.
Vek
Постоянный гость
Сообщения: 74
Зарегистрирован: 16 фев 2006, 13:11

Сообщение Vek »

опечатался, сорри :)
Ответить