Buzz
Buzz

Reputation: 6320

Sql Server Order By combine two values as one

I have following data table

   id - name -  city
 - 1    George  Seattle
 - 2    Sam     Boston
 - 3    John    Los Angeles
 - 4    Amy     Milwaukee 
 - 5    Eric    Chicago
 - 6    Nick    New York

here i want to consider chicago and Seattle as same city

so the order i want is

   id - name -  city
 - 1    George  Seattle
 - 5    Eric    Chicago
 - 6    Nick    New York
 - 4    Amy     Milwaukee 
 - 3    John    Los Angeles
 - 2    Sam     Boston

so what condition i should use when using order by city Desc

Upvotes: 0

Views: 40

Answers (1)

DhruvJoshi
DhruvJoshi

Reputation: 17126

You can use a case when then condition in the order by clause

select id,name, city from
yourtable
order by
      (case when city=N'Chicago' then N'Seattle' else city end) desc

I'd suggest that if you need to do this often then consider using a mapping table

Upvotes: 1

Related Questions