C# 我有一个表,它有一个由三列组成的主键。如何索引此表?

C# 我有一个表,它有一个由三列组成的主键。如何索引此表?,c#,sql,postgresql,C#,Sql,Postgresql,投注站的功能是这样的:每周有两轮,在每一轮中,当有人想要出票时,他会得到该轮的号码(第一轮的票(1),第二轮的票(2)…)。我有一张投注站公司所有入场券的票表 此表有30列,包含每张票据的所有详细信息。主键是(位置,回合,编号)我解释了这个数字是该回合内的票号,位置是投注站的位置(一家投注公司在不同的位置有许多投注站)。我想一张一张地选择每张票,但我不知道如何有组织的方式。如果使用自动递增整数类型创建单个列,则很容易。我只是想知道如何索引这个三元组主键,通过一个循环递增地选择每个条目。我使用C#

投注站的功能是这样的:每周有两轮,在每一轮中,当有人想要出票时,他会得到该轮的号码(第一轮的票(1),第二轮的票(2)…)。我有一张投注站公司所有入场券的票表


此表有30列,包含每张票据的所有详细信息。主键是(位置,回合,编号)我解释了这个数字是该回合内的票号,位置是投注站的位置(一家投注公司在不同的位置有许多投注站)。我想一张一张地选择每张票,但我不知道如何有组织的方式。如果使用自动递增整数类型创建单个列,则很容易。我只是想知道如何索引这个三元组主键,通过一个循环递增地选择每个条目。我使用C#来完成这项任务。

由于您没有提供任务的真正目的,我可以想到两种情况

首先,您希望以较小的批量读取表格,以便进行处理/评估。在这种情况下,您必须确保表是不可变的,并运行
SELECT。。。按数字、圆形、贝豪斯偏移量0限制1000、偏移量1000限制1000、偏移量2000限制1000等顺序排列,直到到达最后一行

其次,您希望处理新的传入行。在这种情况下,只有多列PK无法解决这个问题。必须添加具有自动增量值或日期列的列(即创建行的时间)。然后按此列对结果排序,并使用
WHERE mycolumn>{LastReadValue}
查看新行


希望有帮助。

我不清楚这部分
问题是主键由三元组(数字、圆形、贝豪斯)组成。我想以某种方式索引此表,以便在某个循环中一个接一个地获取条目(使用select*from票证…),使用此索引
您可以详细说明您使用的是
select*。SQL引擎决定索引是否适合查询。请详细描述该问题,最好用一个示例。