我有一个相当大的表格,根据查询需要大约10-20秒到fetch
。这使得网站看起来比较慢。提取mysql php表格很慢
我在考虑用LIMIT
来限制结果的数量,并用ajax
来一点一点地显示整个表格。
现在我正在使用ajax来一次显示整个表格。
我想到做这样的事情的......
后端:
$offset = 0;
$rowsToFetch = 100;
{
//Loop
$query = "SELECT * FROM TABLE_NAME LIMIT $offset, $rowsToFetch"
$offset = +100;
$rowsToFetch = +100;
}
前端:
Call ajax function that will call the back end part recursively and display part by part until finished.
我敢肯定它比这更复杂一点。
有没有更好的方法来做到这一点?任何想法如何开始?寻找的陷阱?
P.S.我不想使用分页。我想在一个页面中显示所有内容(优点:CTRL + F)
编辑:在database(command line)
中提取大约需要5-7秒。但是在显示记录的网站中大约需要10-20秒。查询大约需要4-5秒。我定时对页面的各个部分进行计时以识别该部分。
数据的大小是多少? –
使用限制不会影响mysql的性能,它仍然提取所有数据,然后丢弃它的一部分。实际上,mysql的工作原理是一样的。 – Furicane
最大的是约3000条记录。他们大多数在100年代是在1000年代。 – theking963