pkr 0 Denunciar post Postado Fevereiro 10, 2009 e ai pessoal, to com uma duvidazinha aqui num select!! tenho 3 tabelas : noticia -> id_noticia, titulo, data... noticia_categoria -> id, nome noticia_comentario -> id_comentario, id_noticia, comentario... quero fazer um select pra me retornar as 5 noticias mais comentadas...só to me perdendo onde fazer o count etc...alguem pode me ajudar?? abrs Compartilhar este post Link para o post Compartilhar em outros sites
samirbh 0 Denunciar post Postado Fevereiro 11, 2009 faça o cout individual para cada noticia. faça isso com subselect se eu fizer pra você creio que sera mais dificiu você aprender mas não tem problema nehum se você quiser um auxilio mais preciso. poste as duvidas vai ajudar mais gente. primeira dica faça o subselect independente de join, dentro do subselect você vai fazer um join com o registro fora do sub select. select a.tabela, b.tabela, (select max(a.sub_tabela) from tabela join tabela sub_tabela id_tabela.tabela = id_tabela.sub_tabela) from tabela lembrando que o resultado do subselect tem que retornar um valor unico por isso que estou usando o MAX pra retornar o mair valor do campo a dentro do subselect. me fale o que você consegui com isso, e logo apos dar certo montaremos de acordo com o seu caso. é primordial você entender isso. t+... Compartilhar este post Link para o post Compartilhar em outros sites
Alex_poty 0 Denunciar post Postado Fevereiro 11, 2009 select count(c.id_comentario) total,n.quemvocequiser,c.quemvocequiser from noticia n,noticia_comentario c where n.id_noticia=c.id_noticia group by c.id_noticia order by total desc limit 5 Isso resolve. Valewww... Compartilhar este post Link para o post Compartilhar em outros sites
Alex_poty 0 Denunciar post Postado Fevereiro 11, 2009 Detalhe viu colega, Jamais esqueça de ter índices em todos os campos que fará relacionamento e consulta. noticia deve ter índice em id_noticia incondicionalmente. deve ter índice em titulo se você for fazer busca por título. deve ter índice em data se você for fazer busca por data. e assim sucessivamente....... noticia_categoria não entendi essa tabela sendo relacionada com nenhuma outra em função dos nomes dos campos. noticia_comentario id_comentario ?????? deve ter índice em id_noticia incondicionalmente. Valewww... Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Fevereiro 11, 2009 Select id_noticia, titulo, data from noticia where id_noticia in ( select id_noticia from noticia_comentario group by id_noticia ORDER BY count(id_noticia) DESC limit 5 ) Compartilhar este post Link para o post Compartilhar em outros sites