Mysql buscar e ordernar
Eu quero fazer uma busca de linhas, mas estes resultados serão apenas ordenados, ou seja as demais linhas que não deveriam aparecer, continuarão a aparecer, porém só devem aparecer depois.
Seria como se eu tive-se duas querys, algo assim:
SELECT * FROM `products` WHERE `keywords` LIKE '*cafeteira*' //Primeiro
SELECT * FROM `products` WHERE `keywords` NOT LIKE '*cafeteira*' //Segundo
Só que seria tudo em uma unica query, acredito que não seja necessário sub-querys e nem UNION.
Como posso fazer uma ordenação por busca?
Acredito que eu tenha conseguido assim:
SELECT products, ( INSTR(UPPER(chave), 'cafeteira')>0 ) AS hasKey FROM imoveis ORDER BY hasKey DESC
Mas não sei se é a melhor maneira, qual seria a melhor maneira (mais correta, com melhor performance, etc) ?
Discussão (4)
Carregando comentários...