0

我正在研究考试系统。我创建了一个列表视图来显示所有多项选择或真假问题,然后我需要将分页设置为每页 5 个问题。

这里的问题是每个问题的多项选择答案的总数会改变 {1choice,2choices,3choices,4choices 或 5choices} 分页与每个答案交互,因为它是一行,而我需要将其作为一个组来处理(问题与答案),以便在每页上仅显示 5 个问题。

请指教,谢谢

4

1 回答 1

0

我通过使用以最简单的方式解决了这个问题

NTILE(10) OVER(ORDER BY QuestionID ASC) AS Pagenumber

在我的 SQL 中,这会将所有行分为 10 组,具体取决于QuestionID

例如 :

QUestionID    Pagenumber
QUestionID 11              Pagenumber   1
QUestionID 11                Pagenumber 1
QUestionID 11                Pagenumber 1
QUestionID 11                Pagenumber 1
QUestionID 12                Pagenumber 2
QUestionID 12               Pagenumber  2
QUestionID 30                Pagenumber 3
QUestionID 30                Pagenumber 3
QUestionID 30               Pagenumber  3
QUestionID 44               Pagenumber  4
QUestionID 67               Pagenumber  5
QUestionID 67               Pagenumber  5
QUestionID 67               Pagenumber  5

等到我的页码列中有 10 个组

然后在第一次调用时,我的列表视图将select * where pagenumber = 1在第二次调用时将页码作为查询字符串以 1 递增,因此,在第二次调用时select * where pagenumber = 2......直到我到达第 10 页

我希望这可以帮助某人:)

于 2015-01-21T17:23:45.907 回答