忍者ブログ

ゆるいSEの小ネタ集

ゆるキャラ好きのITエンジニアが書くTips。 ゆるキャラ命なSEのIT徒然草 https://itmagic.hatenablog.com/

[SQLServer]ROW_NUMBER()による連番生成

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

ただいまコメントを受けつけておりません。

[SQLServer]ROW_NUMBER()による連番生成

■1から連番を振る
 ROW_NUMBER() over (order by COL1,COL2,COL3) AS SEQNO
 ※order by のソート順に連番を振る。

■ある範囲毎に1からの連番を振る
 ROW_NUMBER() over (partition by COL1 order by COL2,COL3) AS SEQNO
 ※COL1が同じものについて、COL2、COL3のソート順に1からの連番を振る。
  COL1の値が変われば、1から振り直す。


■複数パターンのデータの組み合わせで連番データ作成
例)A,B,Cの検索結果を組み合わせたデータに連番SEQNOを付加しTESTTABLE1にINSERT
INSERT INTO TESTTABLE1
SELECT
  --COL1~COL4の順でソートした結果に対して連番を振る
  ROW_NUMBER() over (order by A.COL1,A.COL2,B.COL3,C.COL4) AS SEQNO
 ,A.COL1
 ,A.COL2
 ,B.COL3
 ,C.COL4
FROM 
--A,B,Cの検索結果を元にデータ作成
(
  SELECT '1' AS COL1, 'a' AS COL2 UNION
  SELECT '1','b' UNION
  SELECT '2','c'
) A,
(
  SELECT COL3 FROM TABLEB
) B,
(
  SELECT 'Y' AS COL4 UNION 
  SELECT 'N'
) C
PR

コメント

ただいまコメントを受けつけておりません。

プロフィール

HN:
ゆるキャラ命
性別:
非公開

P R