哪一个来自这个查询更快

时间:2012-08-28 作者:Ronin

我需要做一些查询。现在我从这个变量中选择。这是从这个查询速度更快。它们之间有哪些区别?

function filter_where($where = \'\') {
     $where .= " AND post_date > \'" . date(\'Y-m-d\', strtotime(\'-10 days\')) . "\'";
     return $where;
} 

add_filter(\'posts_where\', \'filter_where\');
$my_query = new WP_Query( array( \'meta_key\' => \'post_views\', \'orderby\' => \'meta_value_num\', \'order\' => \'DESC\', \'posts_per_page\' => 5 ) );
remove_filter( \'posts_where\', \'filter_where\' );

while ($my_query->have_posts()) : $my_query->the_post();
还有这个。

 function filter_where($where = \'\') {
      $where .= " AND post_date > \'" . date(\'Y-m-d\', strtotime(\'-10 days\')) . "\'";
      return $where;
}

add_filter(\'posts_where\', \'filter_where\');
$paged = (get_query_var(\'paged\')) ? get_query_var(\'paged\') : 1;
$my_query = new WP_Query( "meta_key=post_views&orderby=meta_value_num&order=DESC&posts_per_page=5&paged=$paged" );
remove_filter( \'posts_where\', \'filter_where\' );

while ($my_query->have_posts()) : $my_query->the_post(); 

1 个回复
最合适的回答,由SO网友:Stephen Harris 整理而成

这些查询是相同的-唯一的区别是语法。不会有明显的性能差异。我更喜欢第一种格式正确的可读性。

(此外,第一个查询不使用paged 参数,所以它不会“分页”-但我想这是被错误地忽略了)。

结束

相关推荐

Performance on WPMS

我的WPMS站点托管在8核/32mb RAM服务器上,但响应时间非常长。我们有大约1000个博客(单个db上有35000多个表)和70000个页面浏览量。我认为我可以缩短响应时间,将具有更多页面浏览量的博客移动到单独的DB中,并使用hyper DB插件将所有博客拆分为每个DB 100个博客。你觉得怎么样?