SQL OrderBy两列为一

Nic*_*dko 0 sql sql-server

我有一个有两列的表:高度和宽度

根据高度或宽度递增地对此表进行排序的最简单方法是什么?

换句话说,它会从每行的高度和宽度中选择最小值,并根据此数字对其进行排序?

提前致谢!

Adu*_*cci 5

您可以在order by子句中使用case语句,如下所示:

select *
from table
order by 
   case when Width > Height then Height else Width end,
   case when Width > Height then Width else Height end
Run Code Online (Sandbox Code Playgroud)