Multiplicação SQL Firebird
Pessoal boa tarde estou precisando fazer uma multiplicação no sql firebird,
estou fazendo esse select abaixo:
select C.cli_codigo AS COD,
N.nf_cli_razao AS CLIENTE,
N.nf_dtemissao AS DATA,
N.nf_numero AS NUMERO_NF,
N.nf_icms_vr AS VALOR_ICMS,
N.nf_vrtotal AS VALOR_TOTAL,
N.nf_nfe_chave_identificacao AS CHAVE_XML,
sum(N.nf_vrtotal * 0,02) as VR_IMPOSTO <<<<<<(essa linha que preciso multiplicar a coluna por 0,02
FROM NF N
INNER JOIN CLIENTES C ON (C.cli_razao = N.nf_cli_razao)
WHERE N.nf_cancelada = 'N'
AND N.nf_nfe_denegada = 'N'
AND C.cli_codigo IN (4943,4376,4507,4605,5464,7118,6115,6287)
AND N.nf_dtemissao BETWEEN :DTINI AND :DTFIM
ORDER BY N.nf_cli_razao, N.nf_dtemissao
alguem pode me ajudar???
estou fazendo esse select abaixo:
select C.cli_codigo AS COD,
N.nf_cli_razao AS CLIENTE,
N.nf_dtemissao AS DATA,
N.nf_numero AS NUMERO_NF,
N.nf_icms_vr AS VALOR_ICMS,
N.nf_vrtotal AS VALOR_TOTAL,
N.nf_nfe_chave_identificacao AS CHAVE_XML,
sum(N.nf_vrtotal * 0,02) as VR_IMPOSTO <<<<<<(essa linha que preciso multiplicar a coluna por 0,02
FROM NF N
INNER JOIN CLIENTES C ON (C.cli_razao = N.nf_cli_razao)
WHERE N.nf_cancelada = 'N'
AND N.nf_nfe_denegada = 'N'
AND C.cli_codigo IN (4943,4376,4507,4605,5464,7118,6115,6287)
AND N.nf_dtemissao BETWEEN :DTINI AND :DTFIM
ORDER BY N.nf_cli_razao, N.nf_dtemissao
alguem pode me ajudar???
Gustavo Baracca
Curtidas 0
Respostas
Emerson Nascimento
02/09/2019
tem certeza que precisa da SUM() ???
Pra usar essas funções de agregação é necessário usar GROUP BY, porém acredito que não é seu caso, visto que você apresenta o valor da nota na linha.
Altere para:
Pra usar essas funções de agregação é necessário usar GROUP BY, porém acredito que não é seu caso, visto que você apresenta o valor da nota na linha.
Altere para:
select C.cli_codigo AS COD, N.nf_cli_razao AS CLIENTE, N.nf_dtemissao AS DATA, N.nf_numero AS NUMERO_NF, N.nf_icms_vr AS VALOR_ICMS, N.nf_vrtotal AS VALOR_TOTAL, N.nf_nfe_chave_identificacao AS CHAVE_XML, (N.nf_vrtotal * 0,02) as VR_IMPOSTO FROM NF N INNER JOIN CLIENTES C ON (C.cli_razao = N.nf_cli_razao) WHERE N.nf_cancelada = 'N' AND N.nf_nfe_denegada = 'N' AND C.cli_codigo IN (4943,4376,4507,4605,5464,7118,6115,6287) AND N.nf_dtemissao BETWEEN :DTINI AND :DTFIM ORDER BY N.nf_cli_razao, N.nf_dtemissao
GOSTEI 0
Gustavo Baracca
02/09/2019
tem certeza que precisa da SUM() ???
Pra usar essas funções de agregação é necessário usar GROUP BY, porém acredito que não é seu caso, visto que você apresenta o valor da nota na linha.
Altere para:
Pra usar essas funções de agregação é necessário usar GROUP BY, porém acredito que não é seu caso, visto que você apresenta o valor da nota na linha.
Altere para:
select C.cli_codigo AS COD, N.nf_cli_razao AS CLIENTE, N.nf_dtemissao AS DATA, N.nf_numero AS NUMERO_NF, N.nf_icms_vr AS VALOR_ICMS, N.nf_vrtotal AS VALOR_TOTAL, N.nf_nfe_chave_identificacao AS CHAVE_XML, (N.nf_vrtotal * 0,02) as VR_IMPOSTO FROM NF N INNER JOIN CLIENTES C ON (C.cli_razao = N.nf_cli_razao) WHERE N.nf_cancelada = 'N' AND N.nf_nfe_denegada = 'N' AND C.cli_codigo IN (4943,4376,4507,4605,5464,7118,6115,6287) AND N.nf_dtemissao BETWEEN :DTINI AND :DTFIM ORDER BY N.nf_cli_razao, N.nf_dtemissao
GOSTEI 0
Gustavo Baracca
02/09/2019
BOA TARDE, OBRIGADO PELO RETORNO, MAIS NAO DEU CERTO SEM USAR O SUM
POREM USANDO O SUM E COLOCANDO O GROUP BY IGUAL VC MENCIONOU, DEU CERTO, OBRIGADO
POREM USANDO O SUM E COLOCANDO O GROUP BY IGUAL VC MENCIONOU, DEU CERTO, OBRIGADO
GOSTEI 0