1
    SELECT * FROM tablename.questions 
where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <=date( from_unixtime(question_created))
        order by question_click_count desc
    ;

要显示 7 天的数据,
我可以像这样在 php 中执行此操作

$day =  mktime(0,0,0,date("m"),date("d")-7,date("Y"));


然后查询sql

select * from 'question'
where question_created < $day and XXXXXXX


哪种方式更好?

4

2 回答 2

0

SQL 比 PHP 内联查询更好。我描述了一些原因:

当您的表当时有大量数据时,您需要优化查询,以便您可以轻松地对数据库而不是 PHP 进行优化。

数据库层始终与应用层分开。

甚至你会使用比 PHP 内联查询更快的数据库获得一些动态查询和块。

谢谢。

于 2013-05-04T07:36:10.437 回答
0

在数据库中执行它比在 PHP 中执行它快得多。

如果它发生在重复 100000 次的循环内,这是一个重要的考虑因素,但如果它发生一次,您将无法区分。

于 2013-05-04T07:33:27.517 回答