PESQUISA SQL ORDER BY DIREFENCIADA

04/02/2015

0

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.
Leonardo Rocha

Leonardo Rocha

Responder

Posts

05/02/2015

Randrade

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
	
Responder

05/02/2015

Leonardo Rocha

Utilizei o teu exemplo e funcionou exatamente como eu precisava. Muito obrigado!!
Responder

05/02/2015

Randrade

Por nada, qualquer dúvida poste ai.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar