![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Есть ли в SQL возможность не указывать имена полей? [D6, WinME]
SergP © (2004-12-14 22:06:00)БД Access
Вобщем ситуация такова: В запросах SELECT нужно как-нить не "привязываться" к именам полей. есть ли такая возможность?
Например есть запрос:
select sum(f1),sum(f2),sum(f3),sum(f4),sum(f5),sum(f6),sum(f7),sum(f8)...
from table where ...
Есть ли возможности:
1). Не указывать явно имена полей, а использовать порядковый номер поля?
2). Можно ли упростить текст запроса если учесть что например мне нужны суммы по полям с номерами от 2 до 25? Т.е. нет ли возможности указания диапазона номеров полей?
anatolyk (2004-12-15 10:58:00) [1]Можно попробовать через Ado:
посмотри, что получится:
for i:=0 to ADOQuery1.FieldsCount-1 do
showmessage(ADOQUERY1.Fields[i].DisplayName);
всегда можно работать и через Fields[i](поля по порядку) и через DisplayName (поля по именам). в твоем случае можно узнать имена полей через DisplayName и сформировать по ним запрос, типа
...
AdoQuery1.SQL.Add('Select');
for i:=0 to ADOTable1.FieldsCount-1 do begin
if (i<(ADOTable1.FieldsCount-1)) and (i>0) then ADOQuery1.SQL.Add(',');
AdoQuery1.SQL.Add(AdoTable1.Fields[i].DisplayName); // только здесь имя поля лучше заключить в квадратные скобки, или кавычки
end;
AdoQuery1.SQL.Add('from Source');
Zacho (2004-12-14 22:26:00) [2]Нет.