2010-01-07 28 views
0

我在我的產品表中有一個int字段,名爲product_stat,每次查看產品時該字段都會增加。我也有一個日期字段叫product_date_addedMySQL:ORDER BY stat/age?

爲了計算產品每天的平均訪問量,您需要使用當前日期和產品添加日期來計算產品存在的天數。然後將產品屬性除以其存在的天數以獲得每天的平均訪問量。

確定,但我想要做的就是通過每天DESC

訪問我該怎麼做選擇的多項產品和訂單呢?

謝謝!

回答

5

像這樣的東西應該做的伎倆,使用DATEDIFF來獲得兩個日期之間的差異,然後將product_stat列除以該差異。

SELECT 
    p.*, 
    p.product_stat/DATEDIFF(CURDATE(),p.product_date_added) as visits_per_day 
FROM products p 
ORDER BY visits_per_day DESC 

雖然請注意,DATEDIFF只是來自MySQL 4.1.1。如果您使用的是早期版本,則應該改爲「TO_DAYS(CURDATE()) - TO_DAYS(p.product_date_added)」。

5

你會想是這樣的:

SELECT product_name, 
product_stat/datediff(now(), product_date_added) as 'VisitPerDay' 
FROM product 
ORDER by VisitPerDay DESC