Saiba como realizar consultas no Mysql mantendo uma ordem pré-definida para os resultados apresentados
Bom dia hoje é terça-feira dia de colocar a mão na massa aqui no blog, trazendo dicas para facilitar o dia a dia dos desenvolvedores web mas antes da dica de hoje aproveite para ler algumas dicas que já trouxe por aqui:
- Como criar um módulo para sua loja Opencart? Parte 1
- Como funciona o VQmod no Opencart?
- Como reduzir imagens em lote no Mac OS usando Automator
Mas vamos a dica do dia )) como realizar consultas no Mysql com ordenação de resultado pré-definida, mas por quê isso?
Bom em um dos últimos jobs que realizei precisei fazer uma consulta que retorna-se os dados na ordem abaixo:
Como você pode ver a ordenação não segue uma lógica por nenhum dos dois campos, nem crescente nem decrescente, eu preciso de uma ordenação fixa (3,2,4,1) como fazer?
Sem utilizar a ordenação o resultado seria:
Porém não conseguia chegar a uma forma simples de realizar tal tarefa até que descobri o o parâmetro order by field, com ele você pode definir a ordem que os resultados serão retornados utilizados para isso qualquer uma das colunas da tabela, veja o mesmo exemplo:
select * from usuario order by field(id,3,2,4,1)
Simples, porém eu não conhecia essa propriedade do SQL utilizado no Mysql e passei um bom tempo procurando a solução, tempo esse que espero que você não precise gastar se encontrar esse post antes 🙂
É isso hoje a dica foi simples mas objetiva, até a próxima com mais dicas sobre desenvolvimento!