gpt4 book ai didi

PHP:跟踪用户和产品品牌的请求?

转载 作者:行者123 更新时间:2023-11-30 21:24:17 24 4
gpt4 key购买 nike

我有一个 MySQL 表,里面有价格请求,它有日期、第一个、最后一个和 product_id 字段。可以从 product_id 的产品表中找到产品品牌。

给定一个日期范围,他们想知道日期范围内每一天的请求总数(按人和按品牌)以及日期范围内的总数。这是棘手的部分,如果同一个人在一天内多次提出请求,那么它只对人算作 1 次。但是,如果一个人在 1 天内请求 2 个不同的品牌,则每个品牌当天都会获得 1 个。但是,如果他们在一天内请求多个品牌,则该品牌当天只会被计为 1。

例如,假设在给定日期,John Doe 提出了 3 个价格请求,分别是 Burberry 产品和 2 个 swarovski 产品。 people 只需要 1 个,burberry 需要 1 个,swarovski 需要 1 个。但是,如果另一个人提出了 burberry 的请求,那么当天将有 2 个 burberry,并且当天有 2 个人。

我希望从那以后。无论如何,最好的方法是什么?我正在使用 PHP4 和 MySQL4

谢谢!

最佳答案

假设表定义为Machine,尝试

-- # Shows number of people doing a request per day
SELECT
Count(DISTINCT userId) AS NumberOfUsers,
FROM
priceRequestsProducts prp,
date
GROUP BY
prp.date;

-- # Shows number of request for a given product per day
SELECT
Count(DISTINCT userId) AS NumberofUsers,
productId,
date
FROM
priceRequestsProducts prp
GROUP BY
prp.date, prp.productId;

不希望在查询中使用。对于人,您希望每天一行,对于产品,您希望每对(产品,天)一行。如果你真的想这样做,引入一个不用作 productId 的值(我会让 productId UNSIGNED INT NOT NULL AUTO_INCREMENT)或使用 NULL,并用它来指定用户:

SELECT
Count(DISTINCT userId) AS NumberOfUsers,
FROM
priceRequestsProducts prp,
NULL,
date
GROUP BY
prp.date;
UNION ALL
SELECT
Count(DISTINCT userId) AS NumberofUsers,
productId,
date
FROM
priceRequestsProducts prp
GROUP BY
prp.date, prp.productId;

关于PHP:跟踪用户和产品品牌的请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/936103/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com