-2

私は次のようなSQLテーブルを持っています:

srno | passportnumber|flightnumber
Null | ABC123        |AI-2000
Null | ab3333        |AI-2011
Null | ab565235      |AI-2562
Null | ABC123        |AI-2025
Null | ABC123        |AI-5623
Null | XYZ12334      |AI-5625

繰り返しパスポート番号rpwsが隣り合うように、パスポート番号で並べ替えるクエリが必要です。次に、テーブルを更新してシリアル番号を挿入します。結果は次のようになります。

1    | ABC123        |AI-2000
2    | ABC123        |AI-2025
3    | ABC123        |AI-5623
4    | ab3333        |AI-2011
5    | ab565235      |AI-2562
6    | XYZ12334      |AI-5625
4

1 に答える 1

4

これを試して:

;WITH Ranked
AS
(
   SELECT *, ROW_NUMBER() OVER(ORDER BY passportnumber) row_num
   FROM Tablename
) 
UPDATE Ranked
SET srno = row_num;

ライブデモ

于 2012-11-19T10:23:01.407 に答える