2

私はproduct_idとentry_dateフィールドを持つ製品テーブルを持っています(これはvarcharで、phpのtime()関数によるタイムスタンプ値を持っています)。1週間にアップロードされた製品の数の結果を取得したい. 1 週間にアップロードされた製品の数の結果を取得できる SQL を教えてください。

user_id フィールドもあります。また、ユーザーごとに 1 週​​間にアップロードされた製品の数も必要です。

4

3 に答える 3

1

重複の可能性:過去 7 日間に追加された最も閲覧されたエントリを表示します

このようなことを試してください:

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

そのため、エントリの日付が 7 日前の日付よりも大きいことがわかります。

于 2012-07-27T08:09:56.163 に答える
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 に答える
0

1 週間あたりの製品アップロード数:

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

特定のユーザーの 1 週間あたりの商品数:

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

于 2012-07-27T08:14:51.570 に答える