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

(resolvido) Duvidas - Sisteminha de busca


Visitante

Pergunta

Boa noite pessoal.

Seguinte.... Preciso listar a busca conform o nivel da empresa no sistema....

Basicamente tenho empresas do tipo C do tipo B e do tipo A, as do tipo C as buscas são menos relevantes, já as do tipo B e A são mais relevantes e aparecem primeiramente nas listagens.

Segue a logica do codigo:

Listagem das empresas tipo A e B, as quais seriam as premiuns.

n = "n"
        c = "c"

                                
                                LISTABUSCAPREMIUM = "SELECT *" _
        & "FROM EMPRESAS " _
        & "WHERE nome_empresa LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR logradouro LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR cep LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR numero LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR bairro LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR telefone LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR estado LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR comentario LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR nome_categoria LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR tags_busca LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR cidade LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & " AND ativo <> '"&n&"' AND tipo <> '"&c&"' ORDER BY tipo ASC;"

FARIA O LOOOP E RETORNAVA O RESULTADO
Aqui seria a listagem das empresas apenas do tipo C
LISTABUSCA = "SELECT *" _
        & "FROM EMPRESAS " _
        & "WHERE nome_empresa LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR logradouro LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR cep LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR numero LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR telefone LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR estado LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR cidade LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & " AND ativo <> '"&n&"' AND tipo = '"&c&"' ORDER BY nome_empresa ASC;"
FARIA O LOOOP E RETORNAVA O RESULTADO

Oks, até ai tudo bem.... Só que na hora da listagem, ela não classifica os A e B na primeira listastagem, Listando os tipo "c" junto, alguém poderia me dar uma dica?

aparentemente deveria funcionar, mas não funcionou....

Desde já fico Grato.

Abraços.

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

2 respostass a esta questão

Posts Recomendados

  • 0

Praticamente 24h passadas, me sinto no direito de atualizar o tópico.

alguém poderia me ajudar nessa duvida..

Atenciosamente.

resolvido, alterando as ordens, e adicionando mais parametros.

& "FROM EMPRESAS " _
        & "WHERE ativo <> '"&n&"' AND tipo = '"&c&"' AND (nome_empresa LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR logradouro LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR cep LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR numero LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR bairro LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR telefone LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR estado LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & ")  ORDER BY tipo ASC;"

Abrigado.. att..

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

  • 0

em uma primeira olhada sua consulta tende a se tornar um tanto custosa ao sgbd.

o que pode ser feito é usar parenteses para indicar a ordem das condições...

LISTABUSCAPREMIUM = "SELECT *" _
        & "FROM EMPRESAS " _
        & "WHERE (nome_empresa LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR logradouro LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR cep LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR numero LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR bairro LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR telefone LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR estado LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR comentario LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR nome_categoria LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR tags_busca LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & "OR cidade LIKE '%" & TiraAcento(Replace(strSearch, "'", "''")) & "%' " _
        & ") AND (ativo <> 'n') AND (tipo <> 'c') ORDER BY tipo ASC;"

bem dizer a mesma coisa que tu fez ali no 2° post...

resultaria em where true and true and true...

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,5k
×
×
  • Criar Novo...