Ir para conteúdo
Fórum Script Brasil
  • 0

Como fazer uma consulta em mais de uma tabela? E como destinguir de qu


ANDRE_GUSTAVO

Pergunta

Pessoal estou tentando fazer uma consulta em 4 tabelas ao mesmo tempo porem sem sucesso!!!

E além da consulta nas tabelas, como eu posso distinguir qual registro vem de qual tabela???

Ficarei muito grato se puderem me ajudar com esse problema!!!!

aqui vai meu sql:

$captura = "(SELECT * FROM eventos WHERE event_name LIKE '%".$palavra_busca."%' OR event_text LIKE '%".$palavra_busca."%' order by Id desc) 
UNION ALL 
(SELECT * FROM news WHERE news_name LIKE '%".$palavra_busca."%' OR news_text LIKE '%".$palavra_busca."%' order by Id desc) 
UNION ALL 
(SELECT * FROM palavra WHERE titulo LIKE '%".$palavra_busca."%' OR texto LIKE '%".$palavra_busca."%' order by Id desc) 
UNION ALL 
(SELECT * FROM planeta WHERE titulo LIKE '%".$palavra_busca."%' OR texto LIKE '%".$palavra_busca."%' order by Id desc)";

Desde já agradeço a atenção e ajuda de todos!!!

Obrigado!!!

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Tenta assim:

$captura = "
SELECT coluna1, coluna2, id, 'eventos' as origem FROM eventos WHERE event_name LIKE '%$palavra_busca%' OR event_text LIKE '%$palavra_busca%'
UNION ALL
SELECT coluna1, coluna2, id, 'news' as origem FROM news WHERE news_name LIKE '%$palavra_busca%' OR news_text LIKE '%$palavra_busca%'
UNION ALL
SELECT coluna1, coluna2, id, 'palavra' as origem FROM palavra WHERE titulo LIKE '%$palavra_busca%' OR texto LIKE '%$palavra_busca%'
UNION ALL
SELECT coluna1, coluna2, id, 'planeta' as origem FROM planeta WHERE titulo LIKE '%$palavra_busca%' OR texto LIKE '%$palavra_busca%'
order by Id desc
"

Editado por Kakao
Link para o comentário
Compartilhar em outros sites

  • 0

talvez exista uma forma melhor de fazer, mas assim funciona

$captura = "(SELECT 'eventos' as tabela, * FROM eventos WHERE event_name LIKE '%".$palavra_busca."%' OR event_text LIKE '%".$palavra_busca."%' order by Id desc)
UNION ALL
(SELECT 'news' as tabela, * FROM news WHERE news_name LIKE '%".$palavra_busca."%' OR news_text LIKE '%".$palavra_busca."%' order by Id desc)
UNION ALL
(SELECT 'palavra' as tabela, * FROM palavra WHERE titulo LIKE '%".$palavra_busca."%' OR texto LIKE '%".$palavra_busca."%' order by Id desc)
UNION ALL
(SELECT 'planeta' as tabela, * FROM planeta WHERE titulo LIKE '%".$palavra_busca."%' OR texto LIKE '%".$palavra_busca."%' order by Id desc)";

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...