鉴于在此示例中看不到太多代码,我将对您的问题做一个高级回答。
评估方法一
- 马上,这部分内容就突出了:“从Employee表中返回所有dep_id”
- 我想从头开始说,因为“全部返回”通常都不是一个好的解决方案,尤其是因为您提到表中有很多行。
评估方法二
- 由于相同的原因,我不确定与第一种方法相比在性能上有什么不同,这似乎也很糟糕。我认为这只是改变您的UI逻辑而已。
典型的“无尽”列表方法
- 您将对 Employees 表进行查询,并加入 Departments 表。
- 您将在UI上实现分页,并将值从第一步开始传递给查询。
- 从根本上讲,您将需要以下变量:Take,Skip,HasMore
- 取: 请求每个查询的项目数
- 跳过: 下一个查询要跳过的项目数,即当前驱动用户界面的列表中当前拥有的项目数的大小。
- HasMore: 您可以在每个查询的响应中设置此项,以使UI知道是否还有更多项目。
- 向下滚动列表时,到达底部时,您将请求更多物品。
最初发出一个查询,例如:取:10,跳过:0按下UI底部时的下一个查询:取:10,跳过:10等。
示例SQL查询:
SELECt * FROM Employees E JOIN Departments D on D.id = E.dept_idorder by E.employee_name offset {SKIP#} rowsFETCH NEXT {TAKE#} rows only希望这会有所帮助,就代码而言,我不确定您实际上要做什么。



