Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal, tenho que fazer um relatório de um banco de dados, de uma tabela só, e estou com algumas dúvidas.
Tenho uma tabela com 3 columas, id, nome, email, e preciso gerar um relatório aonde tenho que colocar o nome uma única vez e na frente o total de emails que o usuário possui.. Tentei usando order by nome, mas não rolou.
Desde já agradeço qualquer ajuda.
Valeu mesmo pela ajuda kra! =D
kra... como eu recupero esses dados com o php?
Por favor ignorem a pergunta anterior, ao invés disso em vez de usar o separate, eu gostaria de contar quantos registros tem?
Ae galera, consegui fazer oque eu queria, era basicamente isso aqui:
<?php
$sql = "select nome, count(*)
from tabela where presente = 1
group by nome
order by nome asc";
foreach(R::getAll($sql) as $c):
echo $c['nome'] . " - " . $c['count(*)'] . "<br>";
endforeach;
?>
p.s: Obrigado hufersil, com base em sua consulta que eu consegui montar a minha! ^^
Bacana Haveno!
Para ficar mais fácil no PHP, você pode dar um apelido ao count:
<?php
$sql = "select nome, count(*) as total
from tabela where presente = 1
group by nome
order by nome asc";
foreach(R::getAll($sql) as $c):
echo $c['nome'] . " - " . $c['total'] . "<br>";
endforeach;
@braços
select nome, group_concat(email separator ', ') as emails
from tabela
group by nome
order by nome asc
@braços