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 3 tabelas relacionadas entre elas.
tabela1
ID | conteudo
------------------
1001 | texto1
1002 | texto2
1003 | texto3
1004 | texto4
1005 | texto5
1006 | texto6
tabela2
ID | conteudo
------------------
2001 | texto1
2002 | texto2
2003 | texto3
2004 | texto4
2005 | texto5
2006 | texto6
Agora esta tabela faz a relação entre a tabela1 e tabela2
tabela3
ID | ID_tabela1 | ID_tabela2
------------------------------------
1 | 1001 | 2002
2 | 1002 | 2004
3 | 1002 | 2005
4 | 1006 | 2002
5 | 1006 | 2004
6 | 1003 | 2004
7 | 1005 | 2001
8 | 1005 | 2006
9 | 1005 | 2004
10| 1004 | 2003
O que eu preciso e exibir o conteúdo da tabela2, mas ordenar pelo que tiver mais itens relacionados
exemplo para ficar mais claro:
tabela2.2005
tablea2.2004
tabela2.2002
tabela2.2001
tabela2.2002
tabela2.2006
caso não tenha ficado claro tento explicar melhor
Obrigado
Leandro muito obrigado é isso mesmo que precisava, o unico problema é que esta exibindo contrario, como posso corrigir isto.
Gostaria do maior para o menor.
Acrescente DESC ao final do order by:
SELECT tabela2.id,tabela2.conteudo FROM tabela2
LEFT JOIN tabela3 ON tabela2.ID = tabela3.ID_tabela2
LEFT JOIN tabela1 ON tabela1.ID = tabela3.ID_tabela1
GROUOP BY tabela2.id,tabela2.conteudo
ORDER BY count(1) DESC
Nossa que falta de atenção da minha parte
Muito Obrigado Leandro
Amigo Flavio, sua dúvida é de MySQL, não de PHP.
Procurem postar suas dúvidas no local correto.
Utilize o campo de resposta rápida que fica abaixo do ultimo post, evite quotes desnecessários.
Leia o tópico abaixo por favor.
http://forum.imasters.com.br/index.php?/topic/375800-orientacoes-para-uma-boa-participacao/
SELECT tabela2.id,tabela2.conteudo FROM tabela2
LEFT JOIN tabela3 ON tabela2.ID = tabela3.ID_tabela2
LEFT JOIN tabela1 ON tabela1.ID = tabela3.ID_tabela1
GROUOP BY tabela2.id,tabela2.conteudo
ORDER BY count(1)