Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 对大型MySQL表进行排序和分页_Php_Mysql_Database_Pagination_Sphinx - Fatal编程技术网

Php 对大型MySQL表进行排序和分页

Php 对大型MySQL表进行排序和分页,php,mysql,database,pagination,sphinx,Php,Mysql,Database,Pagination,Sphinx,我有一个非常大的MySQL表(3亿行12列) 我希望我的用户能够在其中一列ASC和DESC上对整个表进行排序。然后,我的PHP/HTML代码应该向用户显示前10个结果,然后用户应该能够进一步分页 正如您所理解的,如果不进行任何优化,这将需要非常、非常长的时间 我现在正在使用斯芬克斯,这大大加快了这个过程。但还是不够快 我的数据库数据每月只更改一次 为了提高这方面的性能,您有什么建议?如果你能给我建议如何优化斯芬克斯,那就太好了 但是任何建议都是欢迎的,我不必用斯芬克斯来做这个 谢谢! Joel就

我有一个非常大的MySQL表(3亿行12列)

我希望我的用户能够在其中一列ASC和DESC上对整个表进行排序。然后,我的PHP/HTML代码应该向用户显示前10个结果,然后用户应该能够进一步分页

正如您所理解的,如果不进行任何优化,这将需要非常、非常长的时间

我现在正在使用斯芬克斯,这大大加快了这个过程。但还是不够快

我的数据库数据每月只更改一次

为了提高这方面的性能,您有什么建议?如果你能给我建议如何优化斯芬克斯,那就太好了

但是任何建议都是欢迎的,我不必用斯芬克斯来做这个

谢谢!
Joel

就用吧。

你用什么样的索引?你能举一个例子来说明你的选择以获取前10名吗?在你想排序或搜索值的每一列上设置一个
索引。您使用的是ORM还是纯mysql函数?或者您是否使用一些模型来描述DB表?正如Andreas所建议的,向我们展示您获取数据的SQL和PHP。目前,我使用Sphinx作为索引。所以,我也通过Sphinx获取数据。话虽如此,我没有任何选择的例子=/我支持张贴例子的建议。目前,我们只能猜测您正在运行的查询。这就像请别人帮你让你的车开得更快,但拒绝给他们看那辆车,甚至拒绝告诉他们是什么车。他们甚至不能开始猜测什么是合适的Nemanjalazic,这不是一个基本的分页教程吗?我想要的是提高我的大表的性能。回答时不要包含任何内容和断开的链接。