2

我有一个带有 product_id 和 entry_date 字段的产品表(它是 varchar,并且在 php 中具有 time() 函数的时间戳值)。我想获得每周上传多少产品的结果。请告诉我 SQL,以便我可以得到每周上传多少产品的结果。

我也有 user_id 字段。我还需要每个用户每周上传多少产品。

4

3 回答 3

1
SELECT CONCAT(YEAR(entry_date), '_', WEEKOFYEAR(entry_date)) AS week, COUNT(*) Count, user_id
FROM `tbl_products` 
GROUP BY week, product_id, user_id
于 2012-07-27T08:15:01.740 回答
1

可能重复:显示最近 7 天内添加的查看次数最多的条目

尝试这样的事情:

SELECT data-you-want-to-retrieve
FROM `Your-Table`
WHERE entry_date > (curdate() - 604800)

所以它看到输入日期大于 7 天前的日期。

于 2012-07-27T08:09:56.163 回答
0

每周产品上传数:

SELECT   CONCAT(YEAR(entry_date), '_', WEEKOFYEAR(entry_date)) AS week, 
         COUNT(1) AS prodcnt
FROM     products
GROUP BY week

特定用户每周的产品数量:

SELECT   CONCAT(YEAR(entry_date), '_', WEEKOFYEAR(entry_date)) AS week, 
         COUNT(1) AS prodcnt
FROM     products
WHERE    user_id = <userid here>
GROUP BY week

您将获得按类似 分组的结果2012_48,其中48是一年中的第几周(从 1 到 53)。

于 2012-07-27T08:14:51.570 回答