1

私は2つの列を持つテーブルを持っています:

  1. オーダービュー

Country列はすでに埋まっています。したがってOrderView、次の方法で列を埋める必要があります。

Country        OrderView
------------------------
United States     1
Afghanistan       2
Aland Islands     3
Albania           4

など、アルファベット順に (米国が最初でなければなりません)。

linq2sql でそれを行う方法は知っていますが、SQL に問題があります。手伝って頂けますか?

4

1 に答える 1

4

質問が SQL Server に関するものである場合は、caseとを使用できますrow_number

update C
set OrderView = case
                  when Country = 'United States' then 1
                  when Country > 'United States' then rn
                  else rn + 1
                end
from (
      select OrderView,
             Country,
             row_number() over(order by Country) rn
      from YourTable
     ) as C

SEデータ

于 2012-08-13T09:51:05.813 に答える