2013-05-04 72 views
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這樣
在php或mysql中相同的結果,哪種方式更好?

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


然後查詢SQL

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


哪種方式是更好的辦法?

回答

0

在數據庫中做它比PHP做快

這是如果它是一個循環,重複10萬次的內部發生的一個重要考慮因素,但如果它的發生,一旦你將無法分辨。

0

SQL是更好然後PHP嵌入式查詢。我描述了一些原因:

當你的表有在那個時候,你需要優化查詢,以便您可以輕鬆地對數據庫進行優化而不是PHP大量的數據。

數據庫層總是從應用層分離。

即使你會得到使用數據庫這是比較快於PHP嵌入式查詢一些動態查詢&塊。

謝謝。

相關問題