-
Conteúdo Similar
-
Por nascimnbeni80@gmail.com
Caros amigos preciso somar campos de varias tabelas (15 no total), nos quais eu quero somar somente os campos iguais nas data específicas abaixo segue um exemplo.
OBS: precisa ser sempre o ultimo registro de cada tabela, então considere usar LIMIT 1 e ORDER BY id DESC
-
Por neto_celino
Estou usando o seguinte código para somar um SELECT, mas cheguei em um determinado ponto que travei.
Tenho 400 registros na DB e tenho que somar alguns registros somente. Ou seja, somar o (valortotal) de alguns ID's somente.
É possivel e por onde vou ? rs.
<?php $subtotal = "SELECT SUM(valortotal) from tbl_compras WHERE id = VariosIdAqui"; $resultado = mysql_query($subtotal); $registro = mysql_fetch_row($resultado); echo number_format($registro[0], 2, ',', ' ') ; ?>
-
Por Giovanird
Olá amigos!
Tenha a seguinte estrutura no banco MySQL
COD | PONTOX | PONTOY | ATLETAX | ATLETAY
1 | 0 | 1 | Maria | João
2 | 2 | 0 | João | Maria
3 | 0 | 2 | Maria | João
4 | 7 | 5 | Maria | João
5 | 0 | 3 | João | Maria
6 | 2 | 1 | João | Maria
7 | 0 | 6 | Maria | João
8 | 4 | 0 | João | Maria
Preciso de ajuda para somar quantos pontos fez o atleta João nos últimos 5 torneios (COD 8, 7, 6, 5 e 4) Há momento que o João jogou em X e outro momento em Y.
Abaixo segue meu Select, onde a soma dos pontos deve ser 17.
nomeatleta = "João"
Set soma= banco.execute("SELECT sum(PONTOX ) AS somax, sum(PONTOY ) AS somay FROM (select cod, pontox, pontoy, atletax, atletay from torneios where (atletax like '"&nomeatleta&"' or atletay like '"&nomeatleta&"') order by cod desc limit 5) AS temp")
-
Por marsolim
galera tô tentando fazer uma classificação aqui junto com um sum e não to conseguindo. até o momento consigo gerar a tabela de desempenho assim
$sql = "SELECT *,SUM(pontos_total) AS totais FROM desempenho INNER JOIN usuarios ON usuarios.id = desempenho.id_usuario GROUP BY id_usuario ORDER BY totais DESC"; if($res = mysqli_query($con, $sql)){ while($row = mysqli_fetch_assoc($res)){ echo $row["nome"] . " - " . $row["totais"] . "<br>"; } }
ok isso me gera uma tabela como segue
jean claude van damme - 152
bruna marquezine - 149
bruce willis - 131
...
o que não to conseguindo é incluir um contagem pra saber em que posição a pessoa está por exemplo se a bruna marquezine logar no sistema deve aparecer pra ela
Sua pontuação: 149
Sua posição: 2
to tentando incluir uma clausula pra contar os totais maiores ou iguais ao do usuário logado e assim a quantidade de registros que retornar é a posição da pessoa.
detalhe pertinente: totais é uma soma de vários subtotais espalhados pela tabela em nome de cada usuario tipo
nesse cenario temos como soma dos pontos totais
1 - 8
2 - 13
3 - 3
4 - 7
5 - 2
alguma ideia de como posso pegar a posição apenas alterando o sql?
-
Por Felipe Guedes Coutinho
Galera, venho contribuindo com diversas dúvidas, mas hoje quem está com uma dúvida sou eu.
Cenário - Gerar Dados para Relatório de Faturamento.
Objetivo - Obter os valores totais das tabelas de Compra, Venda e Despesa agrupados por mês através de SUM dentro do "periodo" passado pela tela de consulta do relatório.
Problema - Não existe um relacionamento entre as tabelas e eu preciso obter os resultados por 1 (UM) único select pois a cada registro lido com os valores totalizados e agrupados por mês eu movimento para um array onde o resultado do array é movimentado para um Chart do Google que gera um gráfico.
Insumos:
Tabela compra
RESULTADO SEPARADO DA TABELA COMPRA
SELECT sum(vlr_pago),
CASE extract(MONTH from dt_registro_compra)
WHEN 1 THEN 'Janeiro'
WHEN 2 THEN 'Fevereiro'
WHEN 3 THEN 'Março'
WHEN 4 THEN 'Abril'
WHEN 5 THEN 'Maio'
WHEN 6 THEN 'Junho'
WHEN 7 THEN 'Julho'
WHEN 8 THEN 'Agosto'
WHEN 9 THEN 'Setembro'
WHEN 10 THEN 'Outubro'
WHEN 11 THEN 'Novembro'
WHEN 12 THEN 'Dezembro'
END AS mes
FROM db_pescado_gelo.sqltb_compra
WHERE dt_registro_compra between '2019-01-01' and '2019-12-31'
group by mes
order by dt_registro_compra asc
RESULTADO:
Tabela Venda
RESULTADO SEPARADO DA TABELA VENDA
SELECT sum(vlr_vale),
CASE extract(MONTH from dt_registro_venda)
WHEN 1 THEN 'Janeiro'
WHEN 2 THEN 'Fevereiro'
WHEN 3 THEN 'Março'
WHEN 4 THEN 'Abril'
WHEN 5 THEN 'Maio'
WHEN 6 THEN 'Junho'
WHEN 7 THEN 'Julho'
WHEN 8 THEN 'Agosto'
WHEN 9 THEN 'Setembro'
WHEN 10 THEN 'Outubro'
WHEN 11 THEN 'Novembro'
WHEN 12 THEN 'Dezembro'
END AS mes
FROM db_pescado_gelo.sqltb_venda
WHERE dt_registro_venda between '2019-01-01' and '2019-12-31'
group by mes
order by dt_registro_venda asc
RESULTADO:
Tabela Despesa
Sei que devo colocar dt_pagamento is not null
RESULTADO SEPARADO DA TABELA DESPESA
SELECT sum(vlr_pago),
CASE extract(MONTH from dt_pagamento)
WHEN 1 THEN 'Janeiro'
WHEN 2 THEN 'Fevereiro'
WHEN 3 THEN 'Março'
WHEN 4 THEN 'Abril'
WHEN 5 THEN 'Maio'
WHEN 6 THEN 'Junho'
WHEN 7 THEN 'Julho'
WHEN 8 THEN 'Agosto'
WHEN 9 THEN 'Setembro'
WHEN 10 THEN 'Outubro'
WHEN 11 THEN 'Novembro'
WHEN 12 THEN 'Dezembro'
END AS mes
FROM db_pescado_gelo.sqltb_despesa
WHERE dt_pagamento between '2019-01-01' and '2019-12-31'
AND dt_pagamento is not null
group by mes
order by dt_pagamento asc
RESULTADO:
O resultado que eu gostaria é algo parecido com isso:
TABELA DE VENDA TABELA DE COMPRA TABELA DE DESPESA - - R$ 31.272,55 Julho - - Agosto R$ 3.796,53 R$ 20.687,20 Agosto R$ 3.796,53 Agosto
Esse resultado eu "preciso" que seja através do retorno do um único SELECT, se alguém puder me ajudar, ficarei muito agradecido.
Se puderem dar uma forã agradeço @Motta ; @Omar~ ; @Maujor ; @gabrielms
Att.
Felipe Coutinho
-