Ir para conteúdo

POWERED BY:

Arquivado

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

ozzyvegeta

fazer select i contar registro

Recommended Posts

olá..preciso fazer um select i na mesma intrução contar quantos registros vieram

 

exe:::

 

select * from news where news_title like '%' OR news like '%' order by news_date DESC LIMIT 0, 2

nessa instrução eu pego todos da tabela news com os filtros determinado no WHERE, só q eu precisava trazer o numero de linhas no resultado...eh como se colocasse algo como "*, count(*)" só q não funciona pq da um problema dizendo q preciso usar o group by, mas não intendo como fazer issu..

 

otra coisa...mesmo usando a clausula LIMIT, eu queria q o COUNT contasse tds os registros da tabela, i não somente os registros q foram filtrados...

 

vlw....

Compartilhar este post


Link para o post
Compartilhar em outros sites

se você estiver usando o mysql... já tentou. a função

 

$select = mysql_query("select * from news where news_title like '%' OR news like '%' order by news_date DESC LIMIT 0, 2");echo mysql_num_rows($select);

ou você poderia fazer o seguiunte..

 

$query = "select * from news where news_title like '%' OR news like '%' ";echo mysql_num_rows(mysql_query($query));$query .= " order by news_date DESC LIMIT 0, 2";$select = mysql_query($query);

Isso é meio que na gambiarra mais funfa =)

se o Fabyo ler esse topico vai me matar :P

Compartilhar este post


Link para o post
Compartilhar em outros sites

ai, isso ai...hehemais se não me engano, ele está fazendo outra query ai, ou não??Agora, você pode fazer do velho modo, uma query conta todos os registros, e outra seleciona os valores filtrados que você quer.$sql = "select count(*) from news";$query = mysql_query($sql);$result = mysql_result($query,0);

Compartilhar este post


Link para o post
Compartilhar em outros sites

claro que da pra fazer com uma query só

 

só usar select dentro de select, isso é muito usado e util

 

exemplo

 

select *, (select count(*) from tabela) as total from tabela where campo like '%' OR campo2 like '%' order by campo DESC LIMIT 0, 2

 

qualquer duvida posta ai ou pesquise na documentação do mysql

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nossa sabia que o fabyo tinhas suas cartas nas mangas... :P Adailton todo dia eu estudo mais essas manhas só com o tempo e vendo aqui no forum.. nunca pensei em fazer isso...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como sempre o Fabyo ... :D

Adailton todo dia eu estudo mais essas manhas só com o tempo e vendo aqui no forum.. nunca pensei em fazer isso...

Concordo plenamente Érick. O legal é que isso nos faz pesquisar e estudar pra entender também, e, quando estivermos estudando isso, certamente pelo "caminho" encontraremos outras funções, métodos, "meios" que também não conhecemos e teremos que estudá-los também ... Isso vira um ciclo infinito de aprendizado. ... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif http://forum.imasters.com.br/public/style_emoticons/default/graduated.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

fabyo, eh quase issu..só q tem ao invez de contar tds os elementos da tabela, ele conta todo o resultado da pesquisa só que sem o LIMIT, intendeu??é como se eu fizesse assim:select *, (select * as total from tabela where campo like '%' OR campo2 like '%' order by campo DESC) as total from tabela where campo like '%' OR campo2 like '%' order by campo DESC LIMIT 0, 2...só q sem o LIMIT viu...axo q essa forma eh muita gambiarra...por isso perguntei pra vcs se tem um meio mas facil de fazer issu...mas vlw ae

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.