【发布时间】:2011-12-22 04:08:59
【问题描述】:
我一直在用 PHP 为我的网站构建这个自定义搜索功能,它根据最终用户提供的选项和输入逐步构建 MySQL 查询。它在我的本地服务器上完美运行,但是当我将它上传到生产站点时,它运行速度非常慢。我对 PHP 和 MySQL 编程比较陌生,所以我对一般情况和未来的项目都很好奇:
在运行搜索查询时,最好有一个复杂、精确的 MySQL 查询来过滤数据并返回结果供 PHP 显示,还是运行一个简单的 MySQL 查询并从数据库中获取一堆数据并拥有PHP过滤数据然后显示结果?
【问题讨论】:
-
在大多数情况下,尽可能多地在数据库中进行过滤是有意义的——从一个巨大的表中发送多个数据是没有意义的,只是为了让 PHP 从一个字节中丢弃除一个字节之外的所有数据一个记录中的字段。但是,YMMV。