Jump to content
GustavoJacob15

Subtração de Campo feito com Case

Recommended Posts

Eu preciso subtrair os campos IDA_ALMOCO e VOLTA_ALMOCO, porém eles são feitos pelo case e não da tabela 


 

SELECT P8_MAT, RA_NOME, P8_DATA, P8_CC, CTT_DESC01,  
     CASE 
    WHEN P8_TPMARCA = '1S'  THEN P8_HORA
    END IDA_ALMOCO,
     CASE 
    WHEN P8_TPMARCA = '2E' THEN P8_HORA
    END VOLTA_ALMOCO
FROM SP8010 SP8
INNER JOIN SRA010 SRA ON SRA.RA_MAT = SP8.P8_MAT AND SRA.D_E_L_E_T_=''
INNER JOIN CTT010 CTT ON CTT.CTT_CUSTO = SP8.P8_CC AND CTT.D_E_L_E_T_=''
INNER JOIN SR6010 SR6 ON SR6.R6_TURNO = SRA.RA_TNOTRAB AND SR6.D_E_L_E_T_=''
WHERE SP8.D_E_L_E_T_=''
AND P8_TPMARCA IN ('1S', '2E')

 

Share this post


Link to post
Share on other sites
SELECT P8_MAT, RA_NOME, P8_DATA, P8_CC, CTT_DESC01,P8_HORAI,P8_HORAV,(P8_HORAV-P8_HORAI) DIF
FROM
(
SELECT P8_MAT, RA_NOME, P8_DATA, P8_CC, CTT_DESC01,  
    MAX(CASE
    WHEN P8_TPMARCA = '1S'  THEN P8_HORAI
    END) IDA_ALMOCO,
    MAX(CASE
    WHEN P8_TPMARCA = '2E' THEN P8_HORAV
    END) VOLTA_ALMOCO
FROM SP8010 SP8
INNER JOIN SRA010 SRA ON SRA.RA_MAT = SP8.P8_MAT AND SRA.D_E_L_E_T_=''
INNER JOIN CTT010 CTT ON CTT.CTT_CUSTO = SP8.P8_CC AND CTT.D_E_L_E_T_=''
INNER JOIN SR6010 SR6 ON SR6.R6_TURNO = SRA.RA_TNOTRAB AND SR6.D_E_L_E_T_=''
WHERE SP8.D_E_L_E_T_=''
AND P8_TPMARCA IN ('1S', '2E')
GROUP BY P8_MAT, RA_NOME, P8_DATA, P8_CC, CTT_DESC01
)

Tente assim , tentei sua sql aqui mas ela não rolou deu um erro estranho

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

  • Similar Content

    • By ricardonews
      olá pessoal, alguém ja teve dificuldade de logar no banco com um formulario de login feito pelo ajax quando a senha é criptografada?
      a minha está o sendo pelo md5 e quando deixo sem criptografia eu logo no banco.  Eu gostaria de logar com criptografia.
      vou deixar  a index e o arquivo que busca no banco de dados
      <!doctype html> <html> <?php require_once"config.php"; ?> <head> <title>Formulario de login</title> <style type="text/css"> html{ height:100%; background: linear-gradient(rgba(38, 128, 101, 0.9), rgba(52, 177, 140, 0.9)); } #div_login{ width:500px; margin:40px auto; position:relative; background-color: #ffffff; padding: 20px; border-radius: 5px; } #message{ width:100%; text-align:center; color:red; margin-bottom: 20px; } #div_login h1 { text-align: center; } #div_login input, #div_login textarea,#div_login a{ padding:10px; border:1px solid rgba(38, 128, 101, 0.9); border-radius:4px; -moz-border-radius:4px; -webkit-border-radius:4px; outline:none; box-sizing: border-box; width:100%; font:14px "Trebuchet MS", tahoma, arial; color:#090; margin-bottom:10px; } #div_login #but_submit,#div_login a { background-color: #27ae60; font-weight: bold; text-transform: uppercase; color: #ffffff; width: auto; margin: 0; padding: 10px 20px; } </style> <!--<link href="style.css" rel="stylesheet" type="text/css">--> <script src="jquery-3.2.1.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function(){ $("#but_submit").click(function(){ var username = $("#meu_nome").val().trim(); var password = $("#minha_senha").val().trim(); if( username != "" && password != "" ){ $.ajax({ url:'pesquisar.php', type:'post', data:{username:username,password:password}, success:function(response){ var msg = ""; if(response == 1){ window.location = "home.php"; }else{ msg = "email e senhas invalidos!"; } $("#message").html(msg); } }); } }); }); </script> </head> <body> <div class="container"> <div id="div_login"> <h1>Login</h1> <div id="message"></div> <div> <input type="text" class="textbox" id="meu_nome" name="meu_nome" placeholder="email" /> </div> <div> <input type="password" class="textbox" id="minha_senha" name="minha_senha" placeholder="senhas"/> </div> <div> <input type="button" value="logar" name="but_submit" id="but_submit" /> <a href="inicio.php"><strong>Cadastrar</strong></a> </div> </div> </div> </body> </html> agora vem oque busca os dados no banco e é justamente essa parte que eu não entendo oque acontece.
      <?php require_once "config.php"; // AQUI É O PESQUISAR PHP $uname = mysqli_real_escape_string($con,$_POST['username']); $password = mysqli_real_escape_string($con,$_POST['password']); if ($uname != "" && $password != ""){ $sql_query = "SELECT count(*) as cntUser FROM usuarios WHERE email='".$uname."' and password='".$password."'"; $result = mysqli_query($con,$sql_query); $row = mysqli_fetch_array($result); $count = $row['cntUser']; if($count > 0){ $_SESSION['uname'] = $uname; echo 1; }else{ echo 0; } } desde já fico agradeço 
    • By henricv
      Bom dia.
       
      Estou iniciando na área de desenvolvimento de testes automatizados em Ruby+Cucumber+Capybara.
      Atualmente, estou com o projeto de automação com informações chumbadas no código, porém gostaria de realizar consultas no banco de dados da empresa, para aumentar o nível de minha aplicação.
       
      O problema é que não estou conseguindo achar algum tutorial, ou script como em outras linguagens, que realize esta conexão com o banco de dados. Não utilizo Rails em minha aplicação.
       
      Tentei utilizar o comando em minha aplicação, seguindo um tutorial que estava mais organizado, porém não consegui realizar a conexão correta.
      gem install mysql2  
      Poderiam me ajudar?
    • By MateusOFCZ
      Olá, estou desenvolvendo um projeto de registro de clientes em java no netbeans e usando o MySQL Workbench e Xampp, gostaria de saber se é possível fazer com que o programa fique verificando se está conectado com o banco de dados, e caso não esteja ele mostra uma mensagem pedindo para o usuário se conectar em uma rede, caso ele se conecte o programa irá esconder essa mensagem e funcionará normalmente.

      Eu consegui fazer com que ele mostre se está conectado ou não, porém se eu desligar o servidor ele não atualiza mostrando que está offline, ele continua como online...
    • By wesleycsilva
      Tem uma tabela que relaciona os produtos de uma determinada compra, onde preciso consultar diversos produtos e retornar os ids das compras que tenham todos os produtos que consultei, em uma estrutura parecida com o exemplo abaixo:
       
      SELECT  * FROM  produtos_has_compras WHERE (idProduto = 6 AND idProduto = 77 AND idProduto = 11) GROUP BY idCompra;
       
      Alguém teria uma solução que possa me ajudar?
    • By bradry
      Olá galera !
       
      Tenho uma dúvida referente aos operadores de pesquisa. Tenho uma  tabela com a seguinte estrutura
       
      id integer, CPF varchar ( 20 ), SCORE_CUSTOM varchar ( 20 ),  SCORE varchar ( 20 ), SCORE_CCOG varchar ( 20 ), RESTRITIVO varchar ( 20 ) );
       
      Quando faço uma pesquisa da maneira a baixo colocando aspas simples no ZERO retorna erro, agora quando faço a mesma pesquisa sem aspas me retorna o resultado esperado.
       
      select * from score
      where RESTRITIVO ='0' 
      and SCORE_CUSTOM >=100
      and SCORE_CUSTOM <=200;
       
      Só queria entender se esse funcionamento de aspas vale para tudo que vou pesquisa ou se tem que ser usado em casos específicos. Não consegui encontrar nada sobre na web.
×

Important Information

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