Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom tarde a todos os integrantes do Fórum.
Estou com um enorme problema em meu sql.
De acordo com o sql abaixo tenho os seguintes resultados:
945
1676
684
3607
SELECT
CNP.VEI_OPCIONAL_MODELO.VAL_OPCIONAL
FROM
CNP.VEI_VEICULO
Inner Join CNP.OFI_FICHA_OPCIONAL ON CNP.OFI_FICHA_OPCIONAL.CHASSI = CNP.VEI_VEICULO.CHASSI AND CNP.OFI_FICHA_OPCIONAL.EMPRESA = CNP.VEI_VEICULO.EMPRESA AND CNP.OFI_FICHA_OPCIONAL.MODELO = CNP.VEI_VEICULO.MODELO
Inner Join CNP.VEI_OPCIONAL_MODELO ON CNP.VEI_OPCIONAL_MODELO.EMPRESA = CNP.OFI_FICHA_OPCIONAL.EMPRESA AND CNP.VEI_OPCIONAL_MODELO.MODELO = CNP.OFI_FICHA_OPCIONAL.MODELO AND CNP.VEI_OPCIONAL_MODELO.OPCIONAL = CNP.OFI_FICHA_OPCIONAL.OPCIONAL
WHERE
CNP.VEI_VEICULO.CHASSI = '9BWAB09N9AP016290'
...mas se eu alterá-lo para a somátoria dos termos tal qual o sql abaixo apresentará o seguinte resultado:
6912
SELECT
sum (CNP.VEI_OPCIONAL_MODELO.VAL_OPCIONAL)
FROM
CNP.VEI_VEICULO
Inner Join CNP.OFI_FICHA_OPCIONAL ON CNP.OFI_FICHA_OPCIONAL.CHASSI = CNP.VEI_VEICULO.CHASSI AND CNP.OFI_FICHA_OPCIONAL.EMPRESA = CNP.VEI_VEICULO.EMPRESA AND CNP.OFI_FICHA_OPCIONAL.MODELO = CNP.VEI_VEICULO.MODELO
Inner Join CNP.VEI_OPCIONAL_MODELO ON CNP.VEI_OPCIONAL_MODELO.EMPRESA = CNP.OFI_FICHA_OPCIONAL.EMPRESA AND CNP.VEI_OPCIONAL_MODELO.MODELO = CNP.OFI_FICHA_OPCIONAL.MODELO AND CNP.VEI_OPCIONAL_MODELO.OPCIONAL = CNP.OFI_FICHA_OPCIONAL.OPCIONAL
WHERE
CNP.VEI_VEICULO.CHASSI = '9BWAB09N9AP016290'
GROUP BY
CNP.VEI_VEICULO.CHASSI
...PORÉM O QUE EU PRECISAVA A VERDADE ERA UM SQL TAL QUAL AO MEU SEGUNDO QUE FAZ A SOMA (COM A FUNÇÃO SUM) SÓ QUE NÃO REALIZASSE A SOMA E SIM A JUNÇÃO DOS CAMPOS NUMA ÚNICA CÉLULA, A RESPOSTA DEVE SER ESSA:
945 1676 684 3607
COMO FAZER ISSO?? EXISTE UMA FUNÇÃO OU UMA MANEIRA PARA RESOLVER MEU PROBLEMA DE ACORDO COM O SQL QUE ESTOU MONTANDO???
OBRIGADO!
Olá Motta obrigado pelo retorno, pelo que entendi o caminho seria desenvolver uma function, no entanto não teria como resolver meu problema sem o uso de uma function, visto que caso seja criado essa function eu terei que encaminhar um script para o banco, e para minha utilização gostaria da busca limpa sem scritp no banco.
Abs.
Mas da maneira que se deseja com os valores "deitados" via sql só via function que eu saiba.
>
Mas da maneira que se deseja com os valores "deitados" via sql só via function que eu saiba.
Pesquisei na net e me sugeriram o concat, mas mesmo assim (eu pelo menos não consegui sucesso na operação) você saberia me informar se esse comando (concat) resolveria meu problema?
Obrigado mais uma vez.
Concat resolveria se fossem colunas da mesma linha do result set tipo ...
select table_name , status , concat(table_name , status) x
from user_tables
Para juntar a mesma coluna em linhas diferentes , via sql, não.
http://forum.imasters.com.br/index.php?/topic/202262-concater-string-de-uma-coluna-de-todos-os-registros-retornados/page__hl__%3Cspan%20clas