我在开发一种算法来对原始选票进行排序时遇到了困难。投票表如下所示:
CREATE TABLE [dbo].[Votes](
RecordId int IDENTITY(1,1) NOT NULL,
FirstNameId int NOT NULL,
SecondNameId int NOT NULL,
FirstPreferred bit NULL)
FirstNameId 和 SecondNameId 是对同一个 Names 表的 PK 的引用。用户对名字或名字成对投票,具体取决于 FirstPreferred 列取 1(真)或 0(假)。
请帮忙。我真的没有比在投票表中移动光标更好的办法了。
投票表已经填满了数据,所以我不能影响投票过程。
投票数据:
RecordId FirstNameId SecondNameId FirstPreferred
1 41 60 0
2 49 108 0
3 110 118 0
4 35 41 0
5 15 100 0
6 12 74 1
7 16 122 1
8 46 118 0
9 46 105 1
10 93 117 0
Names 表中的数据样本:
NameId Name
5 Nicolas
6 Sergio
11 Alexander
12 Alexei
13 Albert
15 Anatoly
16 Andreas