多查询MySQL vs PHP
我正在建立一个有表格的网站:电影和剧集 每一页都有:多查询MySQL vs PHP,php,mysql,Php,Mysql,我正在建立一个有表格的网站:电影和剧集 每一页都有: 第一个字符的列表。。。“电影名称以什么开头?” (管理员定义下载次数最多(计算下载次数) (管理员定义)最新更新的数量 如果用户在搜索结果中搜索了某个内容,或者 选择了以其开头的名称的第一个字符列表。。。 所以我想问的是: 我是否应该对每一个进行单独的查询,如: 1. "SELECT * FROM movies ORDER BY name" /* then check the first Characters */ 2. "SELECT *
1. "SELECT * FROM movies ORDER BY name" /* then check the first Characters */
2. "SELECT * FROM movies ORDER BY downloads_count DESC LIMIT :lim", array(":lim"=>NUMBER_TO_SHOW)
3. "SELECT * FROM movies ORDER BY last_update DESC LIMIT :lim", array(":lim"=>NUMBER_TO_SHOW)
4. "SELECT * FROM movies ORDER BY WHERE name LIKE :char name LIMIT :start, :end", array(":char"=>$first_char."%", ":start"=>$page_starting_number, ":end"=>$page_ending_number)
,还是应该在每次检查前几个字符是否与foreach(){}
匹配时都对名称进行fech和排序
哪一个对服务器的压力较小(因为我为之编程的服务器很忙,我真的不想把它炸掉…:)
(我听说过mysql缓存……它有多可靠?)
提前感谢最好在查询中这样做,因为数据库系统已为此进行了优化。对于重复出现的查询,您可以使用
Memcached
。最好在查询中这样做,因为数据库系统已经为此进行了优化。对于重复出现的查询,您可以使用Memcached
。谢谢您的回答。。。但是如果你知道的话,你能解释一下这种差别吗。。。对于现在来到这里的人来说,onDatabase使用索引进行搜索,这样它可以快速找到与给定id相关的数据,而不必像php一样遍历整个列表,因此速度要快得多。memcached将结果存储在内存中,因此您无需再查询结果(如果查询或数据库未更新),感谢您的回答。。。但是如果你知道的话,你能解释一下这种差别吗。。。对于现在来到这里的人来说,onDatabase使用索引进行搜索,这样它可以快速找到与给定id相关的数据,而不必像php一样遍历整个列表,因此速度要快得多。memcached将结果存储在内存中,因此无需再查询结果(如果查询或数据库未更新)