0

私はテーブルを持っています:

例:

Name       |      Last Name
Albert            Rigs
Carl              Dimonds
Robert            Big
Julian            Berg

次のように注文する必要があります。

Name       |      Last Name
Albert            Rigs         (name)
Julian            Berg         (last name)
Robert            Big          (last name)
Carl              Dimonds     

同じ順序で名前と姓で注文するようなものが必要です。例を参照してください。私はアルバートという名前を持っています。次の順序の名前の行はカールですが、姓にビッグとバーグがあり、B> Cなので、2番目の行で姓の順序を取得します。2 つの列が同じように見えますが、そうではありません。説明が難しくてすみません。

それが可能だ?

あらかじめご了承ください。

4

2 に答える 2

4

最小で注文するには、次の(Name, Lastname)ことができます。

select  *
from    YourTable
order by
        case 
        when Name > LastName then LastName
        else name
        end
于 2013-03-19T19:21:01.800 に答える
3

Case の構文が改善され、他の列でタイブレークが可能になりました。

 select   *
 from     my_table
 order by least(name,last_name),
          greatest(name,last_name)
于 2013-03-19T20:44:41.700 に答える