ドライバーとレースヒートを含むレース管理システムを構築しています。
たとえば、13 人のドライバーをグループごとに最大 6 人のグループに分割する必要があります。結果が 2.2 グループになるので不可能です。これは不可能です。3 グループが必要です。6 よりも小さいグループが許可されているため、13 を 3 で割って次の分割を行うことにしました。
ヒート 1: 4 人のドライバー
ヒート 2: 4 人のドライバー
ヒート 3: 5 人のドライバー (残りのドライバーは 6 人以下)
行を分割し、結果を丸めるなどして、3 つのグループが必要であり、グループごとに 4 人以上のドライバーが許可されていることを確認しました。トリッキーな部分は、これをループして残りの (5) を最後のループに追加する方法です... 最初に 2 つの「上位 4 を選択...」、および「上位 100% を選択...」を考えています。 " 残りの 5 人のドライバー。
私はカーソルを知っていますが、私は専門家ではなく、動的 SQL クエリを作成して実行する方法を知っています。
これは、SQL Server 2005 でカーソルやカウンターを使用してどのように行うことができますか?