ORA-00979 - Erro ao abrir query
Olá pessoal, aonde sabe o que está errado abaixo?
O respectivo sql funcionamente perfeitamente num SQLManager, mas ao tentar abrir via Delphi me dá o seguinte erro
'ORA-00979: não é uma expressão GROUP BY'.
var
DataHoraInicio, DataHoraFim : TDatetime;
begin
DataHoraInicio:= Trunc(Now);
DataHoraFim := now;
qryX....
qryX.SQL.Text :=
SELECT
REL.GRUPO,
REL.TIPO_CONEXAO,
REL.RESULTADO_CONEXAO,
COUNT(REL.RESULTADO_CONEXAO) AS TOTAL,
SUM(REL.FALANDO) AS FALANDO
FROM TABELAX REL
WHERE REL.DATAHORA_INICIO >= :DATAHORA_INICIO
AND REL.DATAHORA_INICIO <= :DATAHORA_FIM
AND REL.AGENTE = :AGENTE
GROUP BY GRUPO, TIPO_CONEXAO, RESULTADO_CONEXAO
qryX.ParamByName('AGENTE').AsString := 'XXXXXXX';
qryX.ParamByName('DATAHORA_INICIO').AsDateTime:= DataHoraInicio;
qryX.ParamByName('DATAHORA_FIM').AsDateTime:= DataHoraFim;
qryX.Open;
[]´s
O respectivo sql funcionamente perfeitamente num SQLManager, mas ao tentar abrir via Delphi me dá o seguinte erro
'ORA-00979: não é uma expressão GROUP BY'.
var
DataHoraInicio, DataHoraFim : TDatetime;
begin
DataHoraInicio:= Trunc(Now);
DataHoraFim := now;
qryX....
qryX.SQL.Text :=
SELECT
REL.GRUPO,
REL.TIPO_CONEXAO,
REL.RESULTADO_CONEXAO,
COUNT(REL.RESULTADO_CONEXAO) AS TOTAL,
SUM(REL.FALANDO) AS FALANDO
FROM TABELAX REL
WHERE REL.DATAHORA_INICIO >= :DATAHORA_INICIO
AND REL.DATAHORA_INICIO <= :DATAHORA_FIM
AND REL.AGENTE = :AGENTE
GROUP BY GRUPO, TIPO_CONEXAO, RESULTADO_CONEXAO
qryX.ParamByName('AGENTE').AsString := 'XXXXXXX';
qryX.ParamByName('DATAHORA_INICIO').AsDateTime:= DataHoraInicio;
qryX.ParamByName('DATAHORA_FIM').AsDateTime:= DataHoraFim;
qryX.Open;
[]´s
Alessandro Yamasaki
Curtidas 0
Respostas
Joel Rodrigues
26/08/2013
Tô meio por fora do Oracle, mas como aparentemente a consulta está correta, experimente colocar o alias da tabela na cláusula group by (REL.GRUPO, etC).
GOSTEI 0
Alessandro Yamasaki
26/08/2013
Consegui resolver apenas passando os parametros direto no SQL, mas, vlw
GOSTEI 0