2017-04-07 2 views
2

PostgresとOracleには、generate_series/connect byコマンドが含まれています。シーケンスを1以上インクリメントできるようにするために、ローを挿入する前に可変量だけシーケンスをインクリメントする必要があります。例えば、Postgresの中で、これは以下のクエリのようになります。MS SQL Server内のバルクインクリメントシーケンス

select nextval('mytable_seq') from generate_series(1,3);

のMicrosoft SQL Serverでこれを実現するための推奨方法だろうか?

+2

なぜこれをやりたいですか?ちょうど 'identity'を使って、増分量の引数を与えます。 –

+0

@GordonLinoff http://stackoverflow.com/a/10062436/1186165を参照してください。アイデンティティがテーブルに「結び付けられている」という事実は、いくつかの設定において大きな制限です。 – Kittoes0124

答えて

3

stored procedureコールがあります。あるいは、next value forを複数回呼び出して後で使用するためにキャッシュする、ある種のwhileループを設定することもできます。