none
既存のテーブルデーターにユニークな列を追加する方法。 RRS feed

  • 質問

  • すでにデーターが入っているテーブルに、列を追加して、ユニークな値を入れたいのですが、

    uniqueidentifierでれつをつかすると、既存はNULL値ではいるので、

    たとえば、int 型の列 Key1をついかして、それにユニークな整数(1~...)を入れる方法はないでしょうか?

    レコードの行位置をKey1にアップデートするSQL文等はございませんでしょうか?

    宜しく御教授願います。

    2011年3月11日 1:50

回答

  • ROW_NUMBERで全然かまわないのですが、注意点として、ROW_NUMBERはSQL Server 2005から使用可能です。
    ROW_NUMBERを使わない方法として、以下のようなSQLでも行番号を取得することができます。

    select (select count(*) + 1 from TABLE as T where T.ID < T0.ID) as SEQ from TABLE as T0 oder by T0.ID

     


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
    • 回答としてマーク TAKAPI 2011年3月11日 4:12
    2011年3月11日 4:07

すべての返信