MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


3 participantes

    Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios?

    avatar
    marcusvcr25
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 06/12/2016

    Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios? Empty Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios?

    Mensagem  marcusvcr25 6/12/2016, 20:00

    Boa tarde pessoal,

    Tenho uma grande dúvida e gostaria de compartilhar com os senhores, para que alguém eventualmente venha a me ajudar com a solução.

    Tenho a seguinte situação:
    Uma tabela de contas a receber 'Tab_CR' que contém os campos "CR_CLIENTE, CR_PAGO, CR_ABERTO, CR_STATUS", estou fazendo uma consulta via SQL para obter os seguintes valores: Valor pago à vencer e vencido, valor vencido e valor total por cliente. Logo cheguei nas seguintes Queries:

    Valor vencido pago:
    SELECT sum(Tab_CR.CR_PAGO) AS Soma_CR_PAGO
    FROM Tab_CR
    WHERE (((Tab_CR.CR_CLIENTE)='Cliente exemplo') AND (Tab_CR.CR_STATUS)='Vencido'))

    Valor vencido à pagar:
    SELECT sum(Tab_CR.CR_PAGO) AS Soma_CR_PAGO
    FROM Tab_CR
    WHERE (((Tab_CR.CR_CLIENTE)='Cliente exemplo') AND (Tab_CR.CR_STATUS)='À vencer'))

    Etc.

    Porém, quando minha consulta não atende todos os critérios do WHERE (Ex: Um cliente que não tenha valor pago à vencer), a query retorna o valor vazio. Gostaria de saber como posso fazer com que nesses casos o valor retornado seja igual a 0.

    Já testei várias fomars, porém nenhuma me atendeu e continuo com o campo vazio. Por exemplo:

    SELECT IIF(ISNULL(sum(Tab_CR.CR_PAGO),0,sum(Tab_CR.CR_PAGO) AS SOMA_CR_PAGO;

    SELECT IIF(ISEMPTY(sum(Tab_CR.CR_PAGO),0,sum(Tab_CR.CR_PAGO) AS SOMA_CR_PAGO;

    SELECT SWITCH...

    SELECT NZ...

    A única coisa que consigo ver, é que o retorno está sendo vazio porque existe uma linha do cliente, porém não atende aos critérios do WHERE, não é IsNull, nem IsEmpty.

    Estou com essa limitação no momento e ficaria extremamente agradecido caso alguém consiga me ajudar a dar uma solução ao caso.

    Agradecido desde já.

    Marcus Rocha
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios? Empty Re: Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios?

    Mensagem  FabioPaes 6/12/2016, 21:19

    Seja bem vindo ao Forum!

    Para isso Utilize a Função NZ().


    SELECT Nz(sum(Tab_CR.CR_PAGO),0) AS Soma_CR_PAGO 
    FROM Tab_CR
    WHERE (((Tab_CR.CR_CLIENTE)='Cliente exemplo') AND (Tab_CR.CR_STATUS)='Vencido'))



    NZ(Campo ou expressão,0)


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    avatar
    marcusvcr25
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 06/12/2016

    Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios? Empty Re: Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios?

    Mensagem  marcusvcr25 6/12/2016, 23:06

    Obrigado pelo retorno, já testei e não funciona(ou).
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios? Empty Re: Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios?

    Mensagem  Noobezinho 6/12/2016, 23:43

    Dando um pitaco Razz

    Experimente:

    SELECT sum(Nz(Tab_CR.CR_PAGO,0)) AS Soma_CR_PAGO
    FROM Tab_CR
    WHERE (((Tab_CR.CR_CLIENTE)='Cliente exemplo') AND (Tab_CR.CR_STATUS)='Vencido'))

    Apenas um detalhe, ali onde tem a virgula, a mesma é usada se a instrução SQL for colada diretamente

    na janela SQL da consulta.

    Ser for colocada na grade da consulta, deve ser substituída  por  ponto e virgula ( ; ).

    [ ]'s


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.

    Conteúdo patrocinado


    Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios? Empty Re: Como atribuir o resultado 0 (zero), para uma consulta com resultado vazio, nulo ou que não atenda todos os critérios?

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 18:55