![](/img/trans.png)
[英]I need to sum the number of visits in march and, in another column have the number of visits in april, how can I do it in one query?
[英]How do I sum visits with an SQL query?
我正在尝试过滤 SQL 数据库。
每行代表一个用户,我关注的主列标题为 last_visited,格式为… 2009-06-17 12:15:32。
过去一天/一周/一个月有多少用户访问过?
像:
SELECT COUNT(*) AS USERS_TODAY
FROM parts_users
Where updated_at > (NOW()-7)
那么是列文本还是日期时间? 如果是前者:
SELECT COUNT(*) AS USERS_TODAY
FROM parts_users
WHERE CONVERT(datetime, updated_at, 120) > DATEADD(day, -7, GETDATE())
如果是后者,则省略 CONVERT。
或者,您可能会发现类似这样的有用信息:
SELECT CONVERT(datetime, LEFT(updated_at, 10), 120) AS DATE_ONLY,
COUNT(*) AS USERS_TODAY
FROM parts_users
WHERE CONVERT(datetime, updated_at, 120) > DATEADD(day, -7, GETDATE())
GROUP BY CONVERT(datetime, LEFT(updated_at, 10), 120)
SELECT
SUM(case when (NOW()-1) <= datetime then 1 else 0 end) as 'today',
SUM(case when (NOW()-7) <= datetime then 1 else 0 end) as 'thisweek',
COUNT(*) as 'thismonth'
FROM
table
WHERE
(NOW()-30) <= datetime AND datetime <= NOW()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.