Mostrar informação tudo na mesma linha

23/12/2015

Olá bom dia, tenho essa query abaixo que me retorna dois registro um em cada linha, gostaria que o resultado fosse em uma linha só será que existe essa possibilidade?

SELECT
f.cod_empresa
, f.cod_item
, f.cod_item_compon
, f.den_item_compon
, f.cod_unid_med_compon
,sum(f.qtd_necessaria_sum) AS calc_tb
FROM nv_it_man_massa f
WHERE f.cod_empresa = '02'
AND f.cod_unid_med_compon = 'M'
AND (f.cod_item = '1570' OR (f.den_item_compon <> 'EP 6108-C') )
AND f.ies_tip_item = 'F'
AND f.ies_tip_item_compon = 'P'
AND f.cod_item = '37866'

GROUP BY
f.cod_empresa
, f.cod_item
, f.cod_item_compon
, f.den_item_compon
, f.cod_unid_med_compon

[img]http://arquivo.devmedia.com.br/forum/imagem/402654-20151223-104000.jpg[/img]

Respostas

23/12/2015

Tércio Costa

Qual banco está utilizando?

E poderia nos mostrar como gostaria que ficasse o resultado?
Responder Citar

23/12/2015

Neto

Tércio, bom dia tudo bem.

Então fiz uma montagem aqui para você ver como eu gostaria que ficasse ou seja o registro tudo em uma linha só conforme imagem abaixo.

[img]http://arquivo.devmedia.com.br/forum/imagem/402654-20151223-114152.jpg[/img]
Responder Citar

23/12/2015

Gilson Freitas

Soment se fizer assim parceiro
watss 66-9687-2784


SELECT
f.cod_empresa
, f.cod_item
--, f.cod_item_compon
--, f.den_item_compon
--, f.cod_unid_med_compon
,sum(f.qtd_necessaria_sum) AS calc_tb
FROM nv_it_man_massa f
WHERE f.cod_empresa = '02'
AND f.cod_unid_med_compon = 'M'
AND (f.cod_item = '1570' OR (f.den_item_compon <> 'EP 6108-C') )
AND f.ies_tip_item = 'F'
AND f.ies_tip_item_compon = 'P'
AND f.cod_item = '37866'

GROUP BY
f.cod_empresa
, f.cod_item
--, f.cod_item_compon
--, f.den_item_compon
--, f.cod_unid_med_compon
Responder Citar

23/12/2015

Neto

Gilson, boa tarde tudo bem?

Desta forma eu consigo, mas eu preciso desses campos pois concorda que o cod_item_compon e o campo den_item_compon são diferentes, então eu preciso dessa informação.
Responder Citar

28/12/2015

Neto

Será, que tem alguma outra alternativa para tratar esta situação ?
Responder Citar

28/12/2015

Gilson Freitas

Então você irá ter redundância de informação mesmo.
Você também pode fazer um select normal e fazer uma sub-consulta somente para a soma dos valores

Tente assim:
SELECT
f.cod_empresa
,f.cod_item
,f.cod_item_compon
,f.den_item_compon
,f.cod_unid_med_compon

,calc_tb =
(Select sum(T.qtd_necessaria_sum) from nv_it_man_massa T
Where
T.cod_empresa = f.cod_empresa
and T.cod_item = f.cod_item
)
FROM
nv_it_man_massa f
WHERE
f.cod_empresa = '02'
AND f.cod_unid_med_compon = 'M'
AND (f.cod_item = '1570' OR (f.den_item_compon <> 'EP 6108-C') )
AND f.ies_tip_item = 'F'
AND f.ies_tip_item_compon = 'P'
AND f.cod_item = '37866'
Responder Citar

28/12/2015

Neto

Fala Gilson, bom dia.

Então dessa forma me trouxe o mesmo resultado redundante.
Responder Citar