大型sql表-使用javascript/PHP选择除逐步显示外的所有
我有一个包含用户历史数据的大型SQL表,如下所示:大型sql表-使用javascript/PHP选择除逐步显示外的所有,javascript,php,jquery,mysql,ajax,Javascript,Php,Jquery,Mysql,Ajax,我有一个包含用户历史数据的大型SQL表,如下所示: ID Name Units Company Benefit Date 1 John 1.5 Example A 300$ 1/1/2016 2 Paul 2.12 Example B 600$ 1/2/2016 3 Mike 3.21 Example A 250$ 1/3/2016 ...
ID Name Units Company Benefit Date
1 John 1.5 Example A 300$ 1/1/2016
2 Paul 2.12 Example B 600$ 1/2/2016
3 Mike 3.21 Example A 250$ 1/3/2016
...
**Hi John,**
Your total benefit is: 2043$
Your total yield is: 2%
Your total units by day: 1.25
...
**Historical data**
1/1/2016 - Example A - 1.5 units - 100$ benefit
2/1/2016 - Example B - 2.5 units - 200$ benefit
3/1/2016 - Example A - 3.5 units - 30$ benefit
4/1/2016 - Example C - 1.25 units - 500$ benefit
5/1/2016 - Example A - 1.5 units - 3$ benefit
6/1/2016 - Example A - 2.5 units - 5.4$ benefit
PREV PAGE - NEXT PAGE
我需要加载所有数据以进行一些复杂的计算:收益率、总收益、按公司
然后我需要显示表中的所有数据,但我希望像无限滚动、分页或Ajax加载一样逐步进行。但我不能设置SQL限制,因为需要先加载所有数据
解决方案是进行两次查询:一次查询所有数据,然后查询限制
我最后需要的页面是这样的:
ID Name Units Company Benefit Date
1 John 1.5 Example A 300$ 1/1/2016
2 Paul 2.12 Example B 600$ 1/2/2016
3 Mike 3.21 Example A 250$ 1/3/2016
...
**Hi John,**
Your total benefit is: 2043$
Your total yield is: 2%
Your total units by day: 1.25
...
**Historical data**
1/1/2016 - Example A - 1.5 units - 100$ benefit
2/1/2016 - Example B - 2.5 units - 200$ benefit
3/1/2016 - Example A - 3.5 units - 30$ benefit
4/1/2016 - Example C - 1.25 units - 500$ benefit
5/1/2016 - Example A - 1.5 units - 3$ benefit
6/1/2016 - Example A - 2.5 units - 5.4$ benefit
PREV PAGE - NEXT PAGE
最好的方法是什么?不要害怕使用多个查询。我感觉你想一次完成这一切,不要。在这种情况下,你可以让它工作,但它很难维持。是的,你应该尽量减少你的查询,但不要过度优化 首先你计算你的平均值和总数,然后立即返回,这将给出你的第一个统计数据。然后显示了前X项,我建议您也不要使用AJAX,而是在构建页面时使用AJAX。这是另一个问题。之后,您可以在AJAX调用中自由使用限制来显示下一个/上一个
通过拆分查询,您可以根据需要优化平均/求和查询,并优化纯行查询。这甚至可能是对您当前性能的一种改进。不要害怕使用多个查询。我感觉您想一次完成这一切,不要。在这种情况下,你可以让它工作,但它很难维持。是的,你应该尽量减少你的查询,但不要过度优化 首先你计算你的平均值和总数,然后立即返回,这将给出你的第一个统计数据。然后显示了前X项,我建议您也不要使用AJAX,而是在构建页面时使用AJAX。这是另一个问题。之后,您可以在AJAX调用中自由使用限制来显示下一个/上一个
通过拆分查询,您可以根据需要优化平均/求和查询,并优化纯行查询。这甚至可能是对您当前绩效的改进。我完全同意。聚合(总和和平均值)可以而且应该通过额外的查询在数据库中完成。这还减少了必须从数据库发送到脚本的数据。所以如Martijn所描述的一个聚合查询(平均值、总和),然后是显示实际分录的极限查询。我完全同意。聚合(总和和平均值)可以而且应该通过额外的查询在数据库中完成。这还减少了必须从数据库发送到脚本的数据。所以Martijn描述的一个聚合查询(平均值、总和),然后是显示实际条目的限制查询。