Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Thiago Dell Agnesi

Exibir data e qtde de registros

Recommended Posts

Olá pessoal, procurei por aqui e não consegui achar o que me atende.

É o seguinte, possuo uma tabela (transactions) que recebo boletos, nesta tabela existem os campos <data>, <tto> (id do boleto), <amount> (valor do boleto).

Estou usando esta pesquisa sql:

 

select date, count(`tto`) as total , SUM(`amount`) as recebidas
from transactions
where `tto`=102 and DATE_FORMAT(`date`,'%m') =MONTH(NOW())
group by `tto`";

 

$results_faturada = ORM::for_table('transactions')
->raw_query($query_faturada)
->find_array();

foreach ($results_faturada as $key => $value) {
$faturasdata =$value["date"];
$faturastotal =$value["total"];
$faturasvalor =$value["recebidas"];

 

Essa consulta volta pra mim desta forma:

2014-04-29 - Recebimentos de Boletos (4 Faturadas Hoje) - R$ 2320.00

 

 

Eu preciso de uma consulta que volte assim:

 

2014-04-29 - Recebimentos de Boletos (20 registros) - R$ 20000

2014-04-28 - Recebimentos de Boletos (3 registros) - R$ 3000

2014-04-27 - Recebimentos de Boletos (1 registros) - R$ 1000

 

 

Resumindo, da forma que possuo, ele está mostrando somente a data do ultimo recebimento, contando o que foi faturada neste dia e somando o total em uma linha somente.

 

Preciso que mostre por data, a quantidade recebida no dia e o total, e se houver outra data de recebimento, mostre, conte os boletos e o valor total do dia, e assim por diante, com condição que mostre todos do mês atual.

 

 

Muito obrigado.

 

 

Será que fui claro? rsrs

 


Esqueci que estou trabalhando com minhas classes, segue o codigo correto.

 

$query = "select date, count(`tto`) as total , SUM(`amount`) as recebidas
from transactions
where `tto`=102 and DATE_FORMAT(`date`,'%m') =MONTH(NOW())
group by `tto`";

$stmt = $dbh->prepare("$query");
$stmt->execute();
$result = $stmt->fetchAll();
$i="0";
$ext = EXT;
if ($stmt->rowCount() > 0) {
foreach($result as $value) {
$i++;

$faturasdata =$value["date"];
$faturastotal =$value["total"];
$faturasvalor =$value["recebidas"];


}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Adicione o campo `date` após `tto` (GROUP BY `tto`, `date`).

 

Um detalhe interessante que pode dar uma dor de cabeça no futuro, o filtro para consultar o mês atual não está informando o ano, algo que pode fazer é algo do tipo DATE(`date`) BETWEEN '2014-04-01' AND '2014-04-30' (informar a data inicial e final), ou também YEAR(`date`) = YEAR(CURDATE()) AND MONTH(`date`) = MONTH(CURDATE()), para o mês e ano correntes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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