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

Ordenação em busca MYSQL


crazySerk

Pergunta

Galera, tudo bem com vocês?

 

Estou precisando de uma ajuda no seguinte caso.

Possuo uma busca de classificados que os usuários podem buscar palavras chaves e encontrar o q esta procurando, até aqui esta ok.

O problema é o seguinte, eu preciso ordenar a busca pela palavra chave seguindo a seguinte regra:

- o usuario buscou a palavra HOTEL

- primeira condição é ver se a palavra existe no NOME da empresa

- Segunda condição é verificar se a palavra existe no KEYWORD da empresa

Seguindo essa regra a ideia é que se a pessoa buscou o nome HOTEL todas as empresas que possui o termo "HOTEL" (no campo NOME) vai vim primeiro e posteriormente o que estão no keyword.

O que eu fiz ate o momento é essa consulta:

SELECT 
  nome,
  keyword 
FROM
  empresas_parceiros
WHERE 1=1
AND (nome LIKE '%HOTEL%' OR keyword LIKE '%HOTEL%')
ORDER BY 
nome,
keyword
LIMIT 0, 20 ;

A Saída dessa consulta ficou assim:

- Hotel Paraguaia
- Clinica Veterinaria (possui a palavra hotel no Keyword)
- Posto Shell  (idem )
- Hotel De Minas

Porém a forma correta que precisava exibir era:

- Hotel Paraguaia
- Hotel De Minas
- Clinica Veterinaria (possui a palavra hotel no Keyword)
- Posto Shell  (idem )

Alguém já passou por algo parecido? Consigo fazer isso no SQL ?

Umas das tentativas eu coloquei um "ORDER BY NOME LIKE '%HOTEL%'" mas não adiantou não....

 

Agradeço a ajuda!

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Tenta assim

(SELECT nome, keyword FROM empresas_parceiros WHERE nome LIKE '%HOTEL%' ORDER BY nome)
UNION ALL DISTINCT
(SELECT nome, keyword FROM empresas_parceiros WHERE keyword LIKE '%HOTEL%' ORDER BY nome)

https://dev.mysql.com/doc/refman/5.7/en/union.html

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...