Ir para conteúdo
vagner.analista

Condição de Select com valor null

Recommended Posts

Senhores boa tarde, alguém pode me ajudar?

 

Tenho a seguinte situação, um campo data em duas tabelas, onde caso o contrato tenha aditivo o campo data da tabela TITMCNTADITIVO,  fica preenchido. caso o contrato não tem aditivo ela fica com o valor null. Então caso o valor dessa tabela aditivo estiver null, eu gostaria de apresentar o campo data da tabela TITMCNT do contrato que tem a data fim do contrato, com o select abaixo eu consigo saber se tem aditivo ou não:

SELECT TOP 1 
 (DATA + 90) AS DATAFIM
            
FROM TITMCNTADITIVO (NOLOCK)
            WHERE 1=1
            AND CODCOLIGADA = 1
            AND IDCNT = 72

Neste caso este contrato não tem aditivo, então, gostaria que ele executasse outro SELECT:

SELECT (DATAFIM + 90) AS DATA_FIM  FROM TITMCNT
            WHERE IDCNT = '72'

 

 

O mais lógico que tentei foi assim, mas não dá certo:


SELE

CT TOP 1  (DATA + 90) AS DATAFIM,
CASE (DATA)
WHEN IS NULL THEN ( SELECT (DATAFIM + 90) AS DATA_FIM  FROM TITMCNT
                    WHERE IDCNT = '72'
)
END AS DATAFIM

FROM TITMCNTADITIVO (NOLOCK)
WHERE 1=1
AND CODCOLIGADA = 1
AND IDCNT = 72

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por nohime
      Como resolver essas três tarefas sobre Comandos de Decisão IF do C#?
      2. Receber um número e verificar se ele esta na faixa de 0 à 9. Se sim, mostre uma mensagem afirmativa, caso contrário mostre uma mensagem indicando que o número não se encontra na faixa.
      6. Receber dois números e os apresente em ordem crescente. Utilize apenas a estrutura de decisão if, ou seja, sem o opcional else.
      9. Receber um ano e se este ano for bissexto exibir na tela “Ano Bissexto”, senão exibir na tela “Ano Não-Bissexto”. Um ano é bissexto se for divisível por 4, mas não por 100. Um ano também é bissexto se for divisível por 400.
    • Por mr22robot
      Estou com uma dúvida. É possível determinar um select a partir de uma escolha?
      Ex. 
      SELECT CASE WHEN a < b THEN select * from tabela1 WHEN d < e THEN select * form tabela2 END FROM tabela; Algo parecido. Se uma condição for atendida select1 , se outra condição for atendida: select2.
      O que acontece: estou com um relatorio que preciso criar no winthor e não consigo melhorar isso. Tenho de fazer três relatorios como solução. Se eu consigo implantar isso, eu faria somente um relatorio. 
      Tipo se marcar um campo, sai um relatorio. Se marcar outro, saí outro relatorio.
    • Por nicolasbessa
      Boa tarde!
       
      Como aplicar a regra abaixo em um select?

      Regra Join
      Quando o campo substr(x, 1,1)  ='1'
      montar a chave de pesquisa:
      y = '8' AND y1 =  'L'||lpad( x1, 2)) 

      Quando o campo substrt(x, 1,1) for igual ='A'
      montar a chave de pesquisa:
      y = '8' AND y1 =  'M'||lpad( x1, 2)) 
       
      obrigado!
    • Por BrunoJavan
      Olá, estou com um problema no mínimo curioso. Tenho uma div com ID "conteudo" e na hora de pegar essa div através do getElementById  ou até mesmo do querySelector, SEMPRE retorna null no console. O mais estranho é que se eu digito diretamente no console,  funciona normalmente. Detalhe: isso acontece tanto no Firefox quanto no Chrome.

      Segue código abaixo:
       
      <!DOCTYPE html> <html lang="pt-BR"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Relógio</title> <script> console.log( document.getElementById("conteudo") ); </script> </head> <body> <div id="conteudo">teste</div> </body> </html>  
      To até agora tentando entender pq sempre retorna null mas quando digito diretamente no console do navegador funciona. Alguém sabe me dizer que treta é essa?
    • Por caio_fgf
      Estou desenvolvendo um site e necessito que o menu receba a classe ativo quando o botão for clicado, e se este for clicado de novo ou qualquer parte do documento for clicada, o menu perca a classe.
      Ao clicar em outra parte da página, o menu desaparece, porém, ao clicar novamente no botão do menu, não consigo a aplicação desejada
      $(document).ready(function () { var menu = $("nav") $(".bt_menu").click(function (e) { if (menu.hasClass("ativo")) menu.removeClass("ativo"); else menu.addClass("ativo"); e.stopPropagation(); }); $(document).click(function (e) { $('nav').removeClass("ativo"); }); }); Grato pela atenção
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.