我有吼叫表。
在评级表上方,我保存vote
product_id
user_id
的{{1}}记录,其product_id
评分为rating_date
,并且product_id
。< / p>
现在我必须获取在过去7天内(从当前日期起)拥有最高投票金额的前3名product_id。
对于product_id的最大投票金额记录的预期出货: -
1)vote
8965最后7天总和最多product_id
次
2)vote
4024最后7天总计36 product_id
3)vote
2015年有5个produt_id
最近7天的总和
这是过去7天内最高的3个最高投票总额,所以我根据此输出获取了<?php
$query = mysql_query("SELECT SUM(vote) AS 'meta_sum', product_id
FROM rating
where rating_date >= curdate() - INTERVAL '7' DAY
AND rating_date < curdate() - INTERVAL '1' DAY
GROUP BY product_id
ORDER BY meta_sum DESC LIMIT 3") OR DIE(mysql_error());
while($row = mysql_fetch_assoc($query))
{
$topexpert =$row["product_id"];
$toprating =$row["meta_sum"];
?>
。
我已经尝试了下面的代码片段,但它错了。
ALTER TABLE TABLE_NAME ADD COLUMN_NAME DATETIME/DATE;
答案 0 :(得分:1)
请替换为这些查询
SELECT SUM(vote) AS 'meta_sum', product_id
FROM rating
where rating_date BETWEEN DATE_SUB(NOW(), INTERVAL 7 DAY) AND NOW()
GROUP BY product_id
ORDER BY meta_sum DESC LIMIT 3