PESQUISA SQL ORDER BY DIREFENCIADA
Boa Tarde,
Estou precisando fazer uma consulta diferenciada no SQL SERVER. Tenho um campo que preciso ordenar, que nesse exemplo será o campo "A". Quando o valor do campo "A" for 0, quero que o campo "B" seja ordenado de maneira ascendente. Entretanto, quando o valor do campo "A" for 1, quero que o campo "B" seja ordenado de maneira descendente. OBS: Tudo isso em somente uma instrução sql.
Alguém tem alguma ideia de como poderia montar uma instrução SQL com a descrição acima?
Desde já agradeço.
Estou precisando fazer uma consulta diferenciada no SQL SERVER. Tenho um campo que preciso ordenar, que nesse exemplo será o campo "A". Quando o valor do campo "A" for 0, quero que o campo "B" seja ordenado de maneira ascendente. Entretanto, quando o valor do campo "A" for 1, quero que o campo "B" seja ordenado de maneira descendente. OBS: Tudo isso em somente uma instrução sql.
Alguém tem alguma ideia de como poderia montar uma instrução SQL com a descrição acima?
Desde já agradeço.
Leonardo Rocha
Curtidas 0
Respostas
Randrade
04/02/2015
Não sei se é a melhor maneira, mas você pode utilizar um case, ficaria mais ou menos assim.
select * from [Table_Name] ORDER BY CASE WHEN A=0 THEN B END ASC, CASE WHEN A=1 THEN B END DESC
GOSTEI 0
Leonardo Rocha
04/02/2015
Utilizei o teu exemplo e funcionou exatamente como eu precisava. Muito obrigado!!
GOSTEI 0
Randrade
04/02/2015
Por nada, qualquer dúvida poste ai.
GOSTEI 0