RodrigoKyo22 Postado Fevereiro 16, 2023 Denunciar Share Postado Fevereiro 16, 2023 boa tarde tenho uma tabela clientes , e nela tem um campo categoria como faço para listar essa consulta onde vai exibir tres ultimos registros por categoria, estou usando o mysql com o php nome1 | email | categoria01 nome2 | email | categoria01 nome3 | email | categoria01 nome4 | email | categoria02 nome5 | email | categoria02 nome6 | email | categoria02 obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
2 Frank K Hosaka Postado Fevereiro 17, 2023 Denunciar Share Postado Fevereiro 17, 2023 (editado) Esse tipo de consulta é bem difícil de fazer no MySQL. Mas, graças a Deus, nós temos o PHP! <?php $mysqli=new mysqli("localhost","root","","astudy"); for($categoria=1;$categoria<=5;$categoria++){ $query=$mysqli->query("select id,pessoa,categoria from tbpessoa where categoria=$categoria order by id desc limit 3"); while($pessoa=$query->fetch_assoc()){ echo $pessoa['categoria']." => ".$pessoa['pessoa']."<br>";}} Editado Fevereiro 17, 2023 por Frank K Hosaka Citar Link para o comentário Compartilhar em outros sites More sharing options...
1 lowys Postado Fevereiro 16, 2023 Denunciar Share Postado Fevereiro 16, 2023 faça três buscas, concatene o resultado das 3 num array e entregue pro front Citar Link para o comentário Compartilhar em outros sites More sharing options...
1 lowys Postado Fevereiro 17, 2023 Denunciar Share Postado Fevereiro 17, 2023 Sr. @Frank K Hosaka é ninja! Fez uma busca pra cada e concatenou no array que vai ser devolvido pro front. Muito boa a solução! Parabéns! 👏👏👏 Citar Link para o comentário Compartilhar em outros sites More sharing options...
1 Frank K Hosaka Postado Fevereiro 17, 2023 Denunciar Share Postado Fevereiro 17, 2023 41 minutos atrás, lowys disse: Sr. @Frank K Hosaka é ninja! Fez uma busca pra cada e concatenou no array que vai ser devolvido pro front. Muito boa a solução! Parabéns! 👏👏👏 Hahahahaha... esses aplausos não são merecidos! Eu simplesmente não consegui montar a consulta no MySQL, eu não tive outra solução senão apelar para o PHP, é uma solução de desespero. Quem merece o aplauso é quem conseguir montar uma procedure no MySQL que consiga relacionar os três últimos registros de cada categoria. Isso eu não consegui! Eu agradeço os aplausos, mas eles não são merecidos. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RodrigoKyo22 Postado Fevereiro 16, 2023 Autor Denunciar Share Postado Fevereiro 16, 2023 9 minutos atrás, lowys disse: faça três buscas, concatene o resultado das 3 num array e entregue pro front sim essa seria uma ideia, porem tenho 5 categorias, mas queria fazer isso diretamente na tabela na hora de fazer a requisição no MySQL para listar, queria evitar fazer várias buscas individuais (daria certo também), mas vou tentar dessa forma que você mencionou. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RodrigoKyo22 Postado Fevereiro 17, 2023 Autor Denunciar Share Postado Fevereiro 17, 2023 13 horas atrás, Frank K Hosaka disse: Esse tipo de consulta é bem difícil de fazer no MySQL. Mas, graças a Deus, nós temos o PHP! <?php $mysqli=new mysqli("localhost","root","","astudy"); for($categoria=1;$categoria<=5;$categoria++){ $query=$mysqli->query("select id,pessoa,categoria from tbpessoa where categoria=$categoria order by id desc limit 3"); while($pessoa=$query->fetch_assoc()){ echo $pessoa['categoria']." => ".$pessoa['pessoa']."<br>";}} top amigo deu certo!, só relacionei o id categoria com a tabela categoria e listou corretamente, muito obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RodrigoKyo22 Postado Fevereiro 17, 2023 Autor Denunciar Share Postado Fevereiro 17, 2023 Agora, Frank K Hosaka disse: Hahahahaha... esses aplausos não são merecidos! Eu simplesmente não consegui montar a consulta no MySQL, eu não tive outra solução senão apelar para o PHP, é uma solução de desespero. Quem merece o aplauso é quem conseguir montar uma procedure no MySQL que consiga relacionar os três últimos registros de cada categoria. Isso eu não consegui! Eu agradeço os aplausos, mas eles não são merecidos. sim realmente montar no MySQL achei complicado, pois tem que relacionar o limite por cada categoria individual e ainda agrupar, tentei o group by, o having, eu tinha pesquisado sobre o subsql o problema e que o id categoria esta na mesma tabela, mas da forma que você fez deu super certo ate já apliquei hehe Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
RodrigoKyo22
boa tarde tenho uma tabela clientes , e nela tem um campo categoria como faço para listar essa consulta onde vai exibir tres ultimos registros por categoria, estou usando o mysql com o php
nome1 | email | categoria01
nome2 | email | categoria01
nome3 | email | categoria01
nome4 | email | categoria02
nome5 | email | categoria02
nome6 | email | categoria02
obrigado
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.