найти максимальное значение столбца?

musicDNK
Дата: 10.05.2011 13:02:32
Имеется таблица (paradox) - t_zakaz
Поля:
ZakazID l ZakazNum l Kol l автоинкрементное,интеджер,интеджер

Query - Q1;

Нужно найти максиамльное значение столбца ZakazNum и присвоить его переменной n:integer;
Вот что я для этого делаю:
DM.Q1.Close;
DM.Q1.SQL.Clear;
DM.Q1.SQL.Add('select max(ZakazNum) from t_zakaz');
DM.Q1.Open;
n:=(DM.Q2.Fields[1].Value);
Выдает ошибку:
Q1:Field 'ZakazID' not found.
что нитак делаю? в парадоксе вобще можно использовать Max?
Judo
Дата: 10.05.2011 13:04:50
DM.Q1.SQL.Add('select max(ZakazNum) as MX from t_zakaz');
SQLap
Дата: 10.05.2011 13:05:12
musicDNK,

удали вручную созданные поля в датасете.
musicDNK
Дата: 10.05.2011 13:21:16
SQLap
удали вручную созданные поля в датасете.

В датасете query или table?
Judo
DM.Q1.SQL.Add('select max(ZakazNum) as MX from t_zakaz');

В Q1 fields нужно создавать MX?
Judo
Дата: 10.05.2011 13:24:22
musicDNK
SQLap
удали вручную созданные поля в датасете.

В датасете query или table?
Judo
DM.Q1.SQL.Add('select max(ZakazNum) as MX from t_zakaz');

В Q1 fields нужно создавать MX?


1. Чета типа Fields.Clear он имел ввиду
2. Не надо ничего создавать. Просто для max(ZakazNum) обычно генерируется системное имя в других БД. Так как селектишь не конкретный столбец. В моем примере присваиваем новое имя MX. Просто может с этой генерацией системного имени в парадоксе проблема
musicDNK
Дата: 10.05.2011 13:29:49
Блин намаялся я уже.
Выше описаные способы результата не дают.

Можно как нибудь в ручную отсортировать таблицу по полю ZakazNum
И потом фокусироватся на последней записи?
Или цикл какой нибудь слепить?
Judo
Дата: 10.05.2011 13:39:01
musicDNK
Блин намаялся я уже.
Выше описаные способы результата не дают.

Можно как нибудь в ручную отсортировать таблицу по полю ZakazNum
И потом фокусироватся на последней записи?
Или цикл какой нибудь слепить?


order by .... desc

FieldByName
Vladimir2009
Дата: 10.05.2011 13:44:05
musicDNK
...
что нитак делаю? в парадоксе вобще можно использовать Max?


а может?
n:=DM.Q1.Fields[0].Value;
Judo
Дата: 10.05.2011 13:47:41
ваааще какой-то левак :

musicDNK
......
Выдает ошибку:
Q1:Field 'ZakazID' not found..
musicDNK
Дата: 10.05.2011 13:53:10
Vladimir2009
а может?
n:=DM.Q1.Fields[0].Value;


Да это неважно. при открытии ошибку выдает. эта строчка в программе закоментирована