Fórum o q esta errado ? #165151

06/06/2003

0

oi galera algum pode me dizer o que esta errado nesse sql ??

SELECT extract(month from MovPrincipal.data_caixa), Sum(Total) as Tot
FROM MovPrincipal,MovProdutos,Cardap
WHERE MovPrincipal.Data_Caixa>= ´01/01/2001´ and MovPrincipal.Data_Caixa<= ´01/01/2003´
and MovPrincipal.mov_num=MovProdutos.mov_num
AND prod_cod = cod_prod and cardap.codemp=movprincipal.codemp
and ( movprincipal.codemp<0 OR (movprincipal.codemp=5 ))
Group by (month from MovPrincipal.data_caixa))

qq valeu


Agenor

Agenor

Responder

Posts

06/06/2003

Josemarlourenco

Agenor,
Não seria melhor vc, juntamente com o código SQL, explicar qual o problema está ocorrendo, para que possamos direcionar melhor nossa análise?

Josemar


Responder

Gostei + 0

06/06/2003

Agenor

Agenor, Não seria melhor vc, juntamente com o código SQL, explicar qual o problema está ocorrendo, para que possamos direcionar melhor nossa análise? Josemar


ok ! vamos la amigo ! eu estou usando uma consulta que : dar um group by no mes capturado assim :

SELECT EXTRACT(MONTH FROM data_caixa) , Sum(Val_Total) as Tot
FROM MovPrincipal MovPrincipal
group by (MONTH FROM data_caixa)
só o interbase 6 dar um erro no final do group by (month from data_caixa)
se fosse no access eu fazia : SELECT mid(data_caixa,4,7) as Mes, Sum(Val_Total) as Tot
FROM MovPrincipal MovPrincipal
group by mid(data_caixa,4,7)
mid(copy) pegaria o mes !
eu tou migrando de access pra interbase !! e a branca as vezes e no sql !
qq coisa agradeço !!!


Responder

Gostei + 0

06/06/2003

Josemarlourenco

Agenor,

Em alguns SGBD ou SGA, não se pode usar expressões nem ´alias´ de colunas na cláusula GROUP BY.
Nestes casos, temos que usar:
1) O nome da coluna: Neste caso não se aplica (vc está usando uma expressão);
2) Ou o número da coluna, de acordo com sua posição na cláusula SELECT.

Não conheço o IB, mas tente usar o número da coluna (neste caso 1), ou seja: GROUP BY 1.

Espero que funcione.

Josemar


Responder

Gostei + 0

06/06/2003

Agenor

Agenor, Em alguns SGBD ou SGA, não se pode usar expressões nem ´alias´ de colunas na cláusula GROUP BY. Nestes casos, temos que usar: 1) O nome da coluna: Neste caso não se aplica (vc está usando uma expressão); 2) Ou o número da coluna, de acordo com sua posição na cláusula SELECT. Não conheço o IB, mas tente usar o número da coluna (neste caso 1), ou seja: GROUP BY 1. Espero que funcione. valeu amigo ! mas infelizmente nao funcionou !!! vou tentar um antigo professor de delphi !!! valeu galera e boa tarde !!! Josemar



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar