Fórum Query p/ transformar texto em inteiro #34963
07/07/2008
0
select I.Cod_venda, I.Cod_Produto, P.Descricao_Produto, sum(I.Quantidade_VendaItens) from VendaItens I
so que o camnpo I.Quantidade_VendaItens é texto, mais contem numeros..
tem como fazer a soma?
Cd.wagner.sena
Curtir tópico
+ 0Posts
07/07/2008
Ara.es
select I.Cod_venda, I.Cod_Produto, P.Descricao_Produto, sum( Convert( Numeric(14,2) , I.Quantidade_VendaItens ) ) from VendaItens I
nesse caso convertir o texto para o tipo NUMERIC(14,2), mas vc pode converter para outros tipos. Flw !!
Gostei + 0
07/07/2008
Cd.wagner.sena
select I.Cod_venda, I.Cod_Produto, P.Descricao_Produto, sum( Convert( Numeric(14,2) , I.Quantidade_VendaItens ) ) from VendaItens I join Venda V on V.cod_Venda = I.Cod_venda join Produto P on P.Cod_Produto = I.Cod_Produto where status_Venda <> ´C´ group by I.Cod_venda, I.Cod_Produto, P.Descricao_Produto, sum( Convert( Numeric(14,2) , I.Quantidade_VendaItens ) )
sop que dá este error
Server: Msg 144, Level 15, State 1, Line 5 Cannot use an aggregate or a subquery in an expression used for the group by list of a GROUP BY clause.
so que o texto que tem na base é decimal, tipo 1,00
Gostei + 0
07/07/2008
Ara.es
Gostei + 0
07/07/2008
Cd.wagner.sena
Gostei + 0
08/07/2008
Ara.es
Gostei + 0
10/07/2008
Flasp2000
I.Cod_Produto,
P.Descricao_Produto,
sum( Convert( Numeric(14,2) , I.Quantidade_VendaItens ) )
from VendaItens I
join Venda V
on (V.cod_Venda = I.Cod_venda)
join Produto P
on (P.Cod_Produto = I.Cod_Produto)
where status_Venda <> ´C´
group by I.Cod_venda,
I.Cod_Produto,
P.Descricao_Produto
Sempre que você soma um campo, apenas agrupe as outras colunas.
Abraços.
Gostei + 0
10/07/2008
Flasp2000
Gostei + 0
22/07/2008
Eduardocaetano
sum( Convert( Numeric(14,2) , replace(I.Quantidade_VendaItens, ´,´ , ´.´ ) ) )
Deve ser por ter campos que o sql continua entendendo como texto, pois ´,´ é entendido como texto. O [b:2ecc5dcc1b]replace[/b:2ecc5dcc1b] trata isso
Há Braços.
select I.Cod_venda, I.Cod_Produto, P.Descricao_Produto, sum( Convert( Numeric(14,2) , I.Quantidade_VendaItens ) ) from VendaItens I join Venda V on V.cod_Venda = I.Cod_venda join Produto P on P.Cod_Produto = I.Cod_Produto where status_Venda <> ´C´ group by I.Cod_venda, I.Cod_Produto, P.Descricao_Produto, sum( Convert( Numeric(14,2) , I.Quantidade_VendaItens ) )
Server: Msg 144, Level 15, State 1, Line 5 Cannot use an aggregate or a subquery in an expression used for the group by list of a GROUP BY clause.
Gostei + 0
30/07/2008
Flasp2000
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)