Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal, estou tentando fazer uma busca, mas tenho tentando de varias formas e nao encontrei o caminho correto.
Basicamente seria, tenho o seguinte
tbcategorias (cat_id, cat_nome)
tbeventos (eve_id, cat_id, eve_nome)
oque estou tentando fazer é ao fazer meu select que fosse listado os resultados da seguinte forma.
digamos que tenho 2 categorias, entao seria listado as 2 categorias e os respectivos eventos de cada uma, agrupados pela categoria.
Cat_Nome (a)
eve_nome (1)
eve_nome (2)
Cat_Nome (B)
eve_nome (1)
eve_nome (2)
É como se eu agrupasse por Categoria pra depois separar e exibir, como nunca tive esse tipo de situação estou bem perdido.
Obrigado.
Mas nesse caso relacionar as tabelas não resolve meu problema, fazer o relacionamento eu sei.
mas oque quero fazer é agrupar por categoria e exibir separado.
conforme disse
Categoria 1
evento a
evento b
Categori 2
evento c
evento d
Usando apenas o join eu simplifico a consulta pra exibir o nome da categoria ja nos resultados, pelo menos pelo que eu sei fazer é por esse lado.
Se eu fizer
$Sql = "SELECT tabeventos.*, tabcategorias.Categoria_Nome FROM tabeventos INNER JOIN tabcategorias ON tabeventos.Categoria_Id = tabcategorias.Categoria_Id ORDER BY Evento_Id DESC LIMIT 0,4";
eu teria
Evento 3 - categoria nome (cat 1)
Evento 2 - categoria nome (cat 1)
Evento 1 - categoria nome (cat 2)
Oque estou tentando
cat 1
Evento 3
Evento 2
cat 2
Evento 1
Vlw.
Boa noite amigo,
Se não estou enganado não há como fazer o que você quer. Pois pra cada evento que ele trouxer vai trazer a categoria também na linha da consulta.
Tu só poderá fazer via programação isso, um SELECT nas categorias que fique rodando um looping, e dentro desse looping outro SELECT pros eventos dessa categoria.
Fico a disposição, abraço.
tbcategorias (cat_id, cat_nome)
tbeventos (eve_id, cat_id, eve_nome)
SELECT tbcategorias.cat_nome , tbeventos.eve_nome
FROM tbcategorias , tbeventos
WHERE tbcategorias.cat_id , tbeventos.cat_id
ORDER BY tbcategorias.cat_nome , tbeventos.eve_nome
Pelo que entendi.
Se a questão for exibição, isto deve ser feito na aplicação (camada de interface).
Para aprender sobre o exemplo acima, veja.