Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bruno (desenvolvedor web)

Problemas com consulta

Recommended Posts

Olá,

 

estou otimizando as buscas do site onde trabalho, porém, hoje cheguei a um impasse, tenho a seguinte consulta:

 

SELECT * FROM produtos WHERE nome LIKE '%hd%' AND estoque = 's' AND idsessao = '19' or nome LIKE '%1t%' AND estoque = 's' AND idsessao = '19'

 

gostaria de usar um ORDER BY para que o código de preferencia (coloque estes registros primeiro no array) aos registros que contenham o texto "1t" porem ela esta na mesma coluna em que os outros registros, algum sabe um jeito de fazer isso ou algo alternativo???

 

Agradeço desde já...

Compartilhar este post


Link para o post
Compartilhar em outros sites

1) Com AND e OR use parenteses

2) Uma solução para o ORDER ...

 

SELECT * 
FROM produtos 
WHERE ((nome LIKE '%hd%' AND estoque = 's' AND idsessao = '19') 
      or 
      (nome LIKE '%1t%' AND estoque = 's' AND idsessao = '19'))
ORDER BY (CASE WHEN LOCATE('1t', nome )  0 THEN 0 ELSE 1 END),NOME

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.