0

私はtableこのように持っています

column1 column2 column3
1   12  1
1   12  2
1   4   3
1   5   4
1   34  5
2   36  6
2   22  7
2   12  8
2   2   9
2   4   10
2   41  11
3   44  12
3   55  13
3   66  14
3   34  15

追加する必要があります column.after そのテーブルは次のようになります

column1 column2 column3 column4
1   12  1   1
1   12  2   2
1   4   3   3
1   5   4   4
1   34  5   5
2   36  6   1
2   22  7   2
2   12  8   3
2   2   9   4
2   4   10  5
2   41  11  6
3   44  12  1
3   55  13  2
3   66  14  3
3   34  15  4

値に応じて、column1column4を追加する必要があります。解決策を得るのを手伝ってください。

4

1 に答える 1

7

はい、一連のランキング機能が組み込まれています。

そのうちの 1 つを次に示しますROW_NUMBER() OVER(PARTITION BY ... ORDER BY ...

SELECT *,
  ROW_NUMBER() OVER(PARTITION BY Column1 ORDER BY Column1) Column5
FROM table;

SQL フィドルのデモ

于 2012-12-19T11:48:10.093 に答える