Jump to content
Sign in to follow this  
arthurvsp97

condição dentro do WHERE

Recommended Posts

Estou precisando fazer uma condição que verifica se uma variável é nula, porém não está dando certo. Nunca mexi com condições e variáveis dentro de SQL e estou bem perdido pra falar a verdade. alguém pode me ajudar? Obrigado.

SELECT        LANCAMENTO.COD_LANC, LANCAMENTO.NOME_LANC, LANCAMENTO.DATA_LANC, LANCAMENTO.DATA_REFERENCIA_LANC, LANCAMENTO.VALOR_LANC, 
              LANCAMENTO.OBSERVACAO_LANC, LANCAMENTO.COD_PROPRI_LANC, LANCAMENTO.HISTORICO_LANC, LANCAMENTO.QUANTIDADE_LANC, 
              LANCAMENTO.NOME_SUB_GRUPO_LANC, LANCAMENTO.NOME_UNIDADE_LANC, GRUPO.NOME_GRUPO, PROPRIEDADE.NOME_PROPRI, TIPO.NOME_TIPO

FROM          PROPRIEDADE INNER JOIN
              LANCAMENTO ON PROPRIEDADE.COD_PROPRI = LANCAMENTO.COD_PROPRI_LANC INNER JOIN
              SUB_GRUPO ON LANCAMENTO.NOME_SUB_GRUPO_LANC = SUB_GRUPO.NOME_SUB_GRUPO INNER JOIN
              GRUPO ON SUB_GRUPO.NOME_GRUPO_SUB_GRUPO = GRUPO.NOME_GRUPO INNER JOIN
              TIPO ON GRUPO.NOME_TIPO_GRUPO = TIPO.NOME_TIPO 

WHERE         GRUPO.NOME_GRUPO LIKE '%' + @grupo + '%' 
              CASE 
                 WHEN @data IS NOT NULL THEN
                     AND LANCAMENTO.DATA_LANC >= @data 
              END

Share this post


Link to post
Share on other sites

Que condição quer testar ?

 

O que fazer se @data for nula ?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By GGM
      Pessoal, é o seguinte.. Tenho a seguinte query, que está funcionando perfeitamente:
       
      SELECT (SELECT SUM(`quantidade_erros`) FROM erro WHERE `fk_id_questionario` = 1 AND `fk_id_turma` = 1) AS alfabeto, (SELECT SUM(`quantidade_erros`) FROM erro WHERE `fk_id_questionario` = 5 AND `fk_id_turma` = 1) AS cores FROM erro WHERE `fk_id_turma` = 1 GROUP BY `fk_id_turma`  

       
      O que acontece é que eu não terei controle sobre os registros contidos na coluna fk_id_questionario, desta forma não sei como proceder para fazer a comparação `fk_id_questionario` = "valorQuePossaEstarContidoNessaColuna".
       
      Alguma dica?
    • By newallan
      Boa tarde,
       
      Pessoal preciso calcular quantas horas/minutos  o empregado descansou  em uma determinada jornada, por exemplo, ele chegou as 10:42:10 e depois saiu 11:02:10 total de 20 min, com o conhecimento que tenho só consigo subtrair chegada - partida na mesma linha, só que não da certo porque a informação e cruzada, e possível fazer em sql?
       

    • By jcsalim
      Pessoal estou com uma dificuldade, criei uma condição if e else para exibir um resultado mas não está dando certo. Veja o código abaixo:
      o if verifica se o valor no banco de dados está "0.00", se for true ele retorna como resposta o primeiro alert, senão ele vai pro segundo alert, mas não vai se eu coloco aspas duplas ou simples ele pula pra condição else e se eu tiro as aspas ele para no if e pronto. Alguém pode me ajudar.
       
      if($mail->Send()){
          
            if($valor_curso == "0.00") {
              echo '
          <script> 
              alert("Obrigado pela inscrição!");
          </script>';
              //adicionei o parâmetro idcliente, pois na próxima página vamos precisar pegar o valor do cupom, que por sua vez está cadastrado no cliente!
             
              echo "<script>location.href='cursos.php?curso=".$curso."'</script>";
            } else{
              echo '
          <script>
              alert("Sua pré-inscrição para o curso '. $nome_curso  .' foi recebida com sucesso. Finalize com o pagamento para confirmar a inscrição");        
          </script>';
       
       
    • By GGM
      Pessoal, é o seguinte.. Tenho a seguinte query, que está funcionando perfeitamente:
       
      SELECT (SELECT SUM(`quantidade_erros`) FROM erro WHERE `fk_id_questionario` = 1 AND `fk_id_turma` = 1) AS alfabeto,
      (SELECT SUM(`quantidade_erros`) FROM erro WHERE `fk_id_questionario` = 5 AND `fk_id_turma` = 1) AS cores FROM erro WHERE
      `fk_id_turma` = 1 GROUP BY `fk_id_turma`
       

       
      O que acontece é que eu não terei controle sobre os registros contidos na coluna fk_id_questionario, desta forma não sei como proceder para fazer a comparação `fk_id_questionario` = "valorQuePossaEstarContidoNessaColuna".
       
      Alguma dica?
    • By oomaikoo
      Boa noite pessoal, estou tentando fazer um código, para mostrar um banner em meu site, quando o usuário entrar, baseado na localização dele. É basicamente o seguinte: a API de geolocalização retorna o nome da cidade, e, se for a cidade, então mostre o banner. Se não for, mostre outro. O código JavaScript que estou usando é esse:
      <script type="application/javascript"> function geoip(json){ var city = document.getElementById("user_city"); city.textContent = json.city; } </script> <script async src="https://get.geojs.io/v1/ip/geo.js"></script> A cidade é: <span id="user_city"></span>

      Esse código retorna o nome da cidade no <span id>.

      Porém eu preciso fazer um IF, ELSE no próprio JavaScript, para mostrar o banner ou não. Seria basicamente assim:
      <script type="application/javascript"> function geoip(json){ var city = document.getElementById("user_city"); city.textContent = json.city; } if (city == "nomedacidade") { document.write ("<img src='banner1.jpg'></img>"); } else { document.write ("<img src='banner2.jpg'></img>"); } </script> <script async src="https://get.geojs.io/v1/ip/geo.js"></script>

      O problema é que a variável city não fica setada dentro do if, não retorna o nome da cidade, eu só queria comparar no if o nome da cidade com o que a API retorna.
      Alguém tem alguma ideia?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.