ARS Informática 0 Denunciar post Postado Janeiro 23, 2018 Boa noite ... Estou tentando fazer uma consulta com grop by e limit, porém não consigo fazer a consulta funcionar. Tenho uma tabela com 6 campos (nome, endereço, cidade, estado, nivel, data) e essa tabela tem 200.000 linhas. estou tentando fazer uma consulta onde apareçam os nomes por estado. Ex.: Estado Nome endereço cidade estado nivel Ac Aramis teste Rio Branco AC 3 Ac Paulo teste Rio Branco AC 3 Ac Tais teste Rio Branco AC 3 Sp Joao teste Sorocaba SP 3 Sp Marcio teste São Paulo SP 3 ... Fiz assim : SELECT * FROM nometabela WHERE nivel = '3' GROUP BY estado ORDER BY estado ASC limit $inicio, $quantidade Ele faz a listagem e agrupa por estado mas não faz a paginação. Alguem pode me ajudar ???? Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Tavares 167 Denunciar post Postado Janeiro 23, 2018 Ou eu não entendi, ou acho que existe algum erro no seu exemplo. 1 - Pq existem duas colunas estado? Foi apenas algum erro na hora de colar/digitar? 2 - Você está agrupando por estado, então como aparecem estados repetidos? Não me parece correto... 1 hora atrás, ARS Informática disse: Ele faz a listagem e agrupa por estado mas não faz a paginação. Pq não? O que acontece? Em tese, seu GROUP não deveria ter influência ou influenciar no LIMIT. São instruções completamente distintas. Se possível poste exatamente como está no momento e como você gostaria que estivesse (me refiro aos resultados da consulta). Compartilhar este post Link para o post Compartilhar em outros sites
ARS Informática 0 Denunciar post Postado Janeiro 24, 2018 Olá ... Fiz desta forma : $sql = "SELECT * FROM nomeRef WHERE nivel = '3' GROUP BY estado ORDER BY estado ASC"; $query = mysql_query($sql) or die(mysql_error()); while($Linha = mysql_fetch_array($query)) { $sqlest = "SELECT * FROM nomeRef WHERE estado = '$Linha[estado]' AND nivel = '3' ORDER BY nome ASC LIMIT $inicio, $quantidade"; $queryest = mysql_query($sqlest) or die(mysql_error()); while($Linhaest = mysql_fetch_array($queryest)) { Listagem ... } Assim lista todos os nomes cadastrados na tabela, agrupados por estado. Ex.: Estado de SP -> todos os nomes de são paulo; estado de SC -> todos os nomes de SC ... Mas não consegui fazer a paginação, ele imprime todos na mesma página. O problema é que tenho que fazer a paginação, pois são muitos dados, são mais de 200 mil linhas. Tenho que imprimir 1000 linhas por página. Podem me ajudar ??? Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
ARS Informática 0 Denunciar post Postado Janeiro 24, 2018 Em 23/01/2018 at 02:55, Matheus Tavares disse: Ou eu não entendi, ou acho que existe algum erro no seu exemplo. 1 - Pq existem duas colunas estado? Foi apenas algum erro na hora de colar/digitar? 2 - Você está agrupando por estado, então como aparecem estados repetidos? Não me parece correto... Pq não? O que acontece? Em tese, seu GROUP não deveria ter influência ou influenciar no LIMIT. São instruções completamente distintas. Se possível poste exatamente como está no momento e como você gostaria que estivesse (me refiro aos resultados da consulta). Olá ... Fiz desta forma : $sql = "SELECT * FROM nomeRef WHERE nivel = '3' GROUP BY estado ORDER BY estado ASC"; $query = mysql_query($sql) or die(mysql_error()); while($Linha = mysql_fetch_array($query)) { $sqlest = "SELECT * FROM nomeRef WHERE estado = '$Linha[estado]' AND nivel = '3' ORDER BY nome ASC LIMIT $inicio, $quantidade"; $queryest = mysql_query($sqlest) or die(mysql_error()); while($Linhaest = mysql_fetch_array($queryest)) { Listagem ... } Assim lista todos os nomes cadastrados na tabela, agrupados por estado. Ex.: Estado de SP -> todos os nomes de são paulo; estado de SC -> todos os nomes de SC ... Mas não consegui fazer a paginação, ele imprime todos na mesma página. O problema é que tenho que fazer a paginação, pois são muitos dados, são mais de 200 mil linhas. Tenho que imprimir 1000 linhas por página. https://www.cinobras.com.br/sistema/teste.php Podem me ajudar ??? Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites