Tenho duas tabelas onde na tabela dtbSCG..FILE_664 existe um campo denominado COD_PRODUTO, porem quando este campo for = '001306' deverá ser somado o campo VLR_5 diferente disso deve ser somado o campo VLR_4.
Porem uma mesma operação pode estar dividida em '001306' e '0013xx' sendo assim é necessario somar os dois valores para executar o update na tabela #BAS_CDC_PESQ
UPDATE
#BAS_CDC_PESQ
SET
VLR_ATS =
ISNULL((
SELECT
CASE WHEN
F.COD_PRODUTO = '001306' THEN
SUM(CAST(CAST(ISNULL(F.VLR_5, 0.00) AS FLOAT) / 100 AS FLOAT))
ELSE
SUM(CAST(CAST(ISNULL(F.VLR_4, 0.00) AS FLOAT) / 100 AS FLOAT))
END
FROM dtbSCG..FILE_664 F
WHERE NUM_OPER=F.NR_CONTRATO AND F.DIAS_ATRASO > 30 AND F.SIT_CONTRATO <> '7'
GROUP BY
F.NR_CONTRATO
), 0.00)
Segue o erro: Column 'F.COD_PRODUTO' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Pergunta
Ney_
:(
Tenho duas tabelas onde na tabela dtbSCG..FILE_664 existe um campo denominado COD_PRODUTO, porem quando este campo for = '001306' deverá ser somado o campo VLR_5 diferente disso deve ser somado o campo VLR_4.
Porem uma mesma operação pode estar dividida em '001306' e '0013xx' sendo assim é necessario somar os dois valores para executar o update na tabela #BAS_CDC_PESQ
Segue o erro: Column 'F.COD_PRODUTO' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.