Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.02;
Скачать: CL | DM;

Вниз

SQL запрос в Oracle через ADOQuery   Найти похожие ветки 

 
mefodiy   (2007-05-07 10:45) [0]

Есть запрос вида:

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 выполняется без проблем.
Где здесь ошибка?
Заранее благодарен.


 
Reindeer Moss Eater ©   (2007-05-07 10:47) [1]

DISTINCT здесь лишний.


 
Reindeer Moss Eater ©   (2007-05-07 10:48) [2]

И кроме того, групбай должен содержать все неагрегированные поля селекта


 
mefodiy   (2007-05-07 10:51) [3]

Без DISTINCT та же ошибка


 
Reindeer Moss Eater ©   (2007-05-07 10:52) [4]

Я и не говорил, что ошибка из-за дистинкта.
Он лишний.


 
mefodiy   (2007-05-07 10:53) [5]

Т.е. должно быть так?

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:57) [6]

Смысл своего дистинкта на естественном языке можешь озвучить?


 
mefodiy   (2007-05-07 10:58) [7]

Действительно ошибка не появилась.
Спасибо!


 
ANB ©   (2007-05-07 12:13) [8]


> mefodiy   (07.05.07 10:58) [7]

Совет - прежде чем засовывать запрос в программу на делфи - отладь его в девелопере.



Страницы: 1 вся ветка

Текущий архив: 2007.09.02;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.019 c
15-1186253150
palva
2007-08-04 22:45
2007.09.02
что для программиста - развлечение, то для ламера - смерть


2-1186807933
Alex7
2007-08-11 08:52
2007.09.02
SELECT DISTINCT :myParameter FROM ... можно ли так?


1-1182495234
DrAndrew
2007-06-22 10:53
2007.09.02
Как удалить запись в реестре при установке программы (InnoSetup)?


6-1168839344
DimaL
2007-01-15 08:35
2007.09.02
Перехват передачи данных


15-1186083986
hybride
2007-08-02 23:46
2007.09.02
Вопрос про удаленку