Oracle: problema com query

6 respostas
P

Opa :smiley:

Estou tentando fazer um select, mas a query esta com erro por causa do Having Count. Nao tem alguma maneira de fazer isso?

SELECT rn_run_id FROM A_C_DB.RUN 
INNER JOIN A_C_DB.TEST on A_C_DB.RUN.RN_TEST_ID = A_C_DB.TEST.TS_TEST_ID 
WHERE A_C_DB.TEST.TS_USER_02 LIKE 'CCV%'
HAVING COUNT(A_C_DB.RUN.RN_TEST_ID) > 0

6 Respostas

fredferrao

padcoe:
Opa :smiley:

Estou tentando fazer um select, mas a query esta com erro por causa do Having Count. Nao tem alguma maneira de fazer isso?

SELECT rn_run_id FROM A_C_DB.RUN INNER JOIN A_C_DB.TEST on A_C_DB.RUN.RN_TEST_ID = A_C_DB.TEST.TS_TEST_ID WHERE A_C_DB.TEST.TS_USER_02 LIKE 'CCV%' HAVING COUNT(A_C_DB.RUN.RN_TEST_ID) > 0

Explique qual a intenção da sua query, o que voce esta querendo exatamente, que assim fica mais facil ajudar.

P

Preciso buscar os registros que aparecem uma determinada quantidade de vezes na tabela, por isso que coloquei o count = N.

Veronicaaa

Eu posso estar errada, mas para usar o Having não precisa utilizar a cláusula Group By e consequentemente uma função de grupo no Select?
Tipo:

SELECT CategoriaID, Sum(UnidadesNoEstoque) FROM Produtos GROUP BY CategoriaID HAVING Sum(UnidadesNoEstoque) > 100 ;

R

Precisa da clausula group by, mas não é obrigatório ter a função de grupo, o exemplo poderia ficar assim:

SELECT CategoriaID FROM Produtos  
GROUP BY CategoriaID  
HAVING Sum(UnidadesNoEstoque) > 100 ;
fredferrao

Que tal um select aninhado?

select * from 
(select count(*) qtde, id from tabela group by id) select1
where qtde > 10

Edit: tava errado do group by

T

SELECT count(CategoriaID) as cont, CategoriaID FROM Produtos GROUP BY CategoriaID

Criado 2 de julho de 2009
Ultima resposta 3 de jul. de 2009
Respostas 6
Participantes 5