![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SQL запрос в Oracle через ADOQuery [D7]
mefodiy © (2007-05-07 10:45:00)Есть запрос вида:
with MyAdoQuery do
begin
Close;
SQL.Clear;
SQL.Add('SELECT DISTINCT ItemId,SUM(LineAmount)
FROM SalesLine GROUP BY ItemId');
Open;
end;
Он нормально обрабатывается.
Но как только я добавляю после ItemId в SELECT еще одно поле той же таблицы
SQL.Add('SELECT DISTINCT ItemId,Barcode,SUM(LineAmount)
FROM SalesLine GROUP BY ItemId');
то вылетает ошибка "ORA-00979: выражение не является выражением GROUP BY".
Хотя этот тот же запрос в TOAD выполняется без проблем.
Где здесь ошибка?
Заранее благодарен.
ANB (2007-05-07 12:13:00) [1]
> mefodiy (07.05.07 10:58) [7]
Совет - прежде чем засовывать запрос в программу на делфи - отладь его в девелопере.
mefodiy (2007-05-07 10:58:00) [2]Действительно ошибка не появилась.
Спасибо!
Reindeer Moss Eater (2007-05-07 10:57:00) [3]Смысл своего дистинкта на естественном языке можешь озвучить?
mefodiy (2007-05-07 10:53:00) [4]Т.е. должно быть так?
with MyAdoQuery do
begin
Close;
SQL.Clear;
SQL.Add('SELECT DISTINCT ItemId,Barcode,SUM(LineAmount)
FROM SalesLine GROUP BY ItemId,Barcode');
Open;
end;
Reindeer Moss Eater (2007-05-07 10:52:00) [5]Я и не говорил, что ошибка из-за дистинкта.
Он лишний.
mefodiy (2007-05-07 10:51:00) [6]Без DISTINCT та же ошибка
Reindeer Moss Eater (2007-05-07 10:48:00) [7]И кроме того, групбай должен содержать все неагрегированные поля селекта
Reindeer Moss Eater (2007-05-07 10:47:00) [8]DISTINCT здесь лишний.