我在我的產品表中有一個int字段,名爲product_stat
,每次查看產品時該字段都會增加。我也有一個日期字段叫product_date_added
。MySQL:ORDER BY stat/age?
爲了計算產品每天的平均訪問量,您需要使用當前日期和產品添加日期來計算產品存在的天數。然後將產品屬性除以其存在的天數以獲得每天的平均訪問量。
確定,但我想要做的就是通過每天DESC
訪問我該怎麼做選擇的多項產品和訂單呢?
謝謝!
我在我的產品表中有一個int字段,名爲product_stat
,每次查看產品時該字段都會增加。我也有一個日期字段叫product_date_added
。MySQL:ORDER BY stat/age?
爲了計算產品每天的平均訪問量,您需要使用當前日期和產品添加日期來計算產品存在的天數。然後將產品屬性除以其存在的天數以獲得每天的平均訪問量。
確定,但我想要做的就是通過每天DESC
訪問我該怎麼做選擇的多項產品和訂單呢?
謝謝!
像這樣的東西應該做的伎倆,使用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)
」。
你會想是這樣的:
SELECT product_name,
product_stat/datediff(now(), product_date_added) as 'VisitPerDay'
FROM product
ORDER by VisitPerDay DESC