2012年8月22日水曜日

[SQL]指定したグループ別に通し番号を振る。

よく忘れるシリーズ。

SQL Serverにて指定したグループで通し番号を振るには
ROW_NUMBER() を使用します。
OVER()内でグループ単位を指定(複数もOK)、通し順を指定します。

'---------------------------------------------

SELECT
   ROW_NUMBER() OVER( PARTITION BY 市, 町  ORDER BY 引っ越して来た日 ) AS SEQ 
   名前, 市, 町, 引っ越して来た日
FROM
  住民台帳
ORDER BY
  市, 町, 引っ越して来た日
'---------------------------------------------

結果は

1,田中,広島市,南町,2012/01/01
2,佐藤,広島市,南町,2012/01/03
1,竹田,広島市,中町,2012/01/02
1,田中,福山市,北町,2012/01/02
2,田中,福山市,北町,2012/01/03

となります。

0 件のコメント:

コメントを投稿