Jump to content
11closed

Select com resultado mais um total no final

Recommended Posts

Bom dia a todos!

Estou tentando criar um Selec com um saldo total na ultima linha.
Ex:Banco: Cadastro

Código   nome        Data                   Saldo
1              Maria       01/11/2018      10,00

2              Joao        02/11/2018      20,00 

3              Jose        03/11/2018      30,00

Total                                      60,00

O select traria os dados com Where de data até tal data como ex, acima Data Between  '2018/01/01 00:00:00'  and  '2018/11/03 00:00:00'

Até ai ok, mas e para adicionar uma somatória total no final?

Tentei usar o Union com um select somando a coluna Saldo mas sem sucesso

Aguem tem alguma dica?

Share this post


Link to post
Share on other sites

Obrigado pela resposta Motta.

Funcionou desta forma:

select codigo, nome, data, saldo FROM cadastro
where data between '2018/01/01 00:00:00' and '2018/11/03 23:59:00'
union
select 0, 'total', max(data), sum(saldo) from cadastro
where data between '2018/01/01 00:00:00' and '2018/11/03 23:59:00'
 
Agora deu certo.

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 Dinho Nunes LC
      <div align="center" id="subtitulo"> Canais Abertos </div> <div class="ui cards"> <div class="card"> <div class="content"> <a href="globo.html" style="display: block; color: black"> <div align="center"> <div> <img class="ui tiny image" id="imagem_card_casa" src="assets/images/Rede_Globo_2014.png"> <div align="center" id = "nome_time_fora"> <b>Globo RJ</b> </div> </div> Onde "globo.html" seria substituído pelo link que esta em uma tabela do banco de dados.
       
      Já fiz a conexão. E tenho a base de dados pronta.
       
      Motivo pelo qual estou buscando ajuda:
       
      Faço manualmente a mudança de cada link (são mais de 300) diariamente para evitar copias de terceiros. Sendo assim poderia usar um CRUD para facilitar a troca dos links direto no banco de dados.
    • By giovannaalves
      Apareceu esse erro na página para retornar os dados do tabela do banco de dados:
      Fatal error: Call to a member function query() on a non-object in /home/storage/e/e6/47/grupoct/public_html/rondact/ronda2.php on line 4
       
      Meu código:
      <?php
          include("conexao.php");
          $consulta = "SELECT * FROM TAG_LIDA";
          $con = $mysqli->query($consulta) or die($mysqli->error);
          
      ?>
      <html>
          <head>
              <meta charset="utf-8">
          </head>
          <body>
              <table border="1">
                  <tr>
                      <td>Código posto</td>
                      <td>Data</td>
                      <td>Hora</td>
                      <td>Nome posto</td>
                      <td>Tag</td>
                  </tr>
                  <?php while($dado = $con->mysql_fetch_array()){ ?>
                  <tr>
                      <td><?php echo $dado["TAG_COD_POSTO"]; ?></td>
                      <td><?php echo date("d/m/Y", strtotime( $dado["TAG_DATA"])); ?></td>
                      <td><?php echo $dado["TAG_HORA"]; ?></td>
                      <td><?php echo $dado["TAG_NOME_POSTO"]; ?></td>
                      <td><?php echo $dado["TAG_TAG"]; ?></td>
                  </tr>
                  <?php } ?>
              
              </table>
          </body>
      </html>
    • By giovannaalves
      Apareceu esse erro na página para retornar os dados do tabela do banco de dados:
      Fatal error: Call to a member function query() on a non-object in /home/storage/e/e6/47/grupoct/public_html/rondact/ronda2.php on line 4
       
      Meu código:
      <?php
          include("conexao.php");
          $consulta = "SELECT * FROM TAG_LIDA";
          $con = $mysqli->query($consulta) or die($mysqli->error);
          
      ?>
      <html>
          <head>
              <meta charset="utf-8">
          </head>
          <body>
              <table border="1">
                  <tr>
                      <td>Código posto</td>
                      <td>Data</td>
                      <td>Hora</td>
                      <td>Nome posto</td>
                      <td>Tag</td>
                  </tr>
                  <?php while($dado = $con->mysql_fetch_array()){ ?>
                  <tr>
                      <td><?php echo $dado["TAG_COD_POSTO"]; ?></td>
                      <td><?php echo date("d/m/Y", strtotime( $dado["TAG_DATA"])); ?></td>
                      <td><?php echo $dado["TAG_HORA"]; ?></td>
                      <td><?php echo $dado["TAG_NOME_POSTO"]; ?></td>
                      <td><?php echo $dado["TAG_TAG"]; ?></td>
                  </tr>
                  <?php } ?>
              
              </table>
          </body>
      </html>
    • By jeanzinsousa
      Salve, Galera estou com uma dúvida estudando banco de dados e programação.
       
      escrevi a seguinte query:
       
      SELECT data_pg as diaria, SUM(valor_pg) as valor_diario, SUM(valor_despesa) as valor_despesa, (SELECT SUM(valor_pg) as dinheiro FROM pagamento WHERE tipo = 5 AND MONTH(data_pg) = 06 AND YEAR(data_pg) = 2019) as total_dinheiro, (SELECTSUM(valor_pg) as debito FROM pagamento WHERE tipo = 25 AND MONTH(data_pg) = 06 AND YEAR(data_pg) = 2019) as total_debito, (SELECT SUM(valor_pg) as credito FROM pagamento WHERE tipo = 15 AND MONTH(data_pg) = 06 AND YEAR(data_pg) = 2019) astotal_credito FROM pagamento WHERE MONTH(data_pg) = 06 AND YEAR(data_pg) = 2019 GROUP BY diaria ORDER BY `diaria`
       
      resultado:
      diaria  1 valor_diario valor_despesa total_dinheiro total_debito total_credito   2019-06-10 818.70 0 288.40 586.95 113.30 2019-06-11 169.95 0 288.40 586.95 113.30
       
       
       
       
      Como podem ver meu objetivo e separar por dia o resultado dos valores divididos por tipo de pagamento.
      porém o mesmo mostra a soma total nas subquery.
      quando coloco o group by order by dentro das subquerys apresenta a seguinte mensagem de erro: #1242 - Subquery returns more than 1 row 
       
       
      como resolver?
    • By JorgeeHenrique
      Bom dia, sou iniciante em Delphi, estou fazendo um Cadastro de Clientes, gostaria de usar três Edit´s para filtrar alguns  dados porem com o código abaixo consegui fazer apenas com 1 edit.text, como faço pra usar três e que se algum estiver em branco ele retorna o valor apenas do Edit.text que foi preenchido?
       
      Exemplo: 
       
      Quero buscar por Nome, Situação e Rota (Cliente a da rota B com situação C) e se algum desses campos estiver vazio ele busca apenas o que foi preenchido. Obrigado pela atenção!
       
      .
      procedure TFrm_Cadastro.Bt_BuscarClick(Sender: TObject); begin with Frm_Cadastro.Tbl_Clientes do begin Close; SQL.Clear; SQL.Add( 'Select * from Tbl_Cad_Clientes'); SQL.Add('where Cli_Nome like :nome'); ParamByName('nome').Value := '%' + txt_buscar_nome.Text + '%'; Open; end; end;  
×

Important Information

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