Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Procurei vários tópicos e não consegui encontrar algo que solucionasse minha dúvida.
Estou tentando fazer uma consulta em três tabelas diferentes e que não tem nenhum campo em comum (dessa forma não posso usar inner join).
Tentei usar join. Porém, não consigo distinguir que o que é de cada tabela.
Alguém tem uma sugestão?
tentou usar UNION ? e ai dar apelidos iguais para os campos coincidirem ?
Tentei usar o union. Dei apelido para todas as tabelas e para seus respectivos campos.
<?php
$sql = "(SELECT n.id as idNoticia, n.data as dataNoticia, n.autor as autorNoticia, n.titulo as tituloNoticia, n.tags as tagsNoticia, n.descricao as descricaoNoticia, n.imagem as imagemNoticia
FROM tbl_noticias n
WHERE n.autor LIKE '%$busca%' OR n.titulo LIKE '%$busca%' OR n.tags LIKE '%$busca%' OR n.descricao LIKE '%$busca%'
ORDER BY n.data DESC)
UNION
(SELECT a.id as idAlbum, a.data as dataAlbum, a.autor as autorAlbum, a.titulo as tituloAlbum, a.tags as tagsAlbum, a.descricao as descricaoAlbum, a.imagem as imagemAlbum
FROm tbl_album a
WHERE a.autor LIKE '%$busca%' OR a.titulo LIKE '%$busca%' OR a.tags LIKE '%$busca%' OR a.descricao LIKE '%$busca%'
ORDER BY a.data DESC)
UNION
(SELECT c.id as idColuna, c.data as dataColuna, c.autor as autorColuna, c.titulo as tituloColuna, c.tags tagsColuna, c.descricao descricaoColuna, c.imagem as imagemColuna
FROM tbl_colunas c
WHERE c.titulo LIKE '%$busca%' OR c.tags LIKE '%$busca%' OR c.descricao LIKE '%$busca%'
ORDER BY c.data DESC)";
?>Pelo que olhei rapidamente da sua estrutura, vc tem o mesmo problema de outro tópico.
Vc tem 3 tabelas que deveriam ser uma só.
Modelando "incorretamente", tudo fica mais difícil mesmo. Te aconselho a juntar tudo em uma só tabela.
Os autores de cada coluna são os mesmos ? se for pode fazer pela coluna autor.
>
Pelo que olhei rapidamente da sua estrutura, vc tem o mesmo problema de outro tópico.
Vc tem 3 tabelas que deveriam ser uma só.
Modelando "incorretamente", tudo fica mais difícil mesmo. Te aconselho a juntar tudo em uma só tabela.
O problema é que estou refazendo um site que já tem a estrutura pronta. A tbl_noticias já tem mais de 10 mil linhas. Não faço ideia de como juntar tudo e incrementar o id sem perder as informações (a tbl_album tem uma chave estrangeira para tbl_fotos).
poste seu select e o que traz no select, e o que você queria que trouxesse!