gpt4 book ai didi

Mysql - 如何计算所有天数内的 Ids

转载 作者:行者123 更新时间:2023-11-30 00:55:22 26 4
gpt4 key购买 nike

此查询:

SELECT date_format(At,'%d %M %Y') as At,
COUNT(ID) as ids
FROM `purchases`
WHERE At >= '2013-12-08 00:00:00' AND At <= '2013-12-09 23:59:59'
GROUP BY date_format(At,'%D%M%Y')

不好!答案应该是数字(一段时间)/这个数字 ids。代表在我店里呆了一整天甚至一天 5 次的唯一 ID。

这是购买表

column1:At                     
colunm2:ID

- '2013-09-23 11:00:14', 2:34299989
- '2013-09-23 11:00:51', 1:100004003444031
- '2013-09-23 11:01:02', 1:100001273059371
- '2013-09-23 11:01:02', 1:100001476045767
- '2013-09-23 11:01:11', 1:1081392435
- '2013-09-23 11:01:17', 1:100001436850024
- '2013-09-23 11:01:30', 1:100000663028305
- '2013-09-23 11:01:38', 1:100003991975009

很抱歉这个表格显示,我无法做得更好。

最佳答案

范围内每天至少进行一次购买的 ID 数量:

SELECT COUNT(ID) FROM (
SELECT ID
FROM purchases
WHERE At >= '2013-12-08' AND At < '2013-12-10'
GROUP BY ID
HAVING COUNT(DISTINCT DATE(At)) = DATEDIFF('2013-12-10','2013-12-08')
) t

在该范围内至少一天进行至少 5 次购买的 ID 数量:

SELECT COUNT(DISTINCT ID) FROM (
SELECT ID, DATE(At)
FROM purchases
WHERE At >= '2013-12-08' AND At < '2013-12-10'
GROUP BY ID, DATE(At)
HAVING COUNT(*) >= 5
) t

(如果您的查询结果是 ID 在该范围内单日至少进行 5 次购买的次数(即计数),则从最后一个查询中删除 DISTINCT多次使用相同的ID(如果多天的每一天至少进行了 5 次购买)。

关于Mysql - 如何计算所有天数内的 Ids,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20606430/

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