Php 4-08-04-2014-08-07将点记录从2014-07-26和访问从2014-07-21返回给我。我使用的查询与您的小提琴所包含的查询完全相同。@radial\u活动哦,好的,很抱歉我在查询中出错了。。等一下,我正在更新。非常感谢您的查询。老实说,这
Php 4-08-04-2014-08-07将点记录从2014-07-26和访问从2014-07-21返回给我。我使用的查询与您的小提琴所包含的查询完全相同。@radial\u活动哦,好的,很抱歉我在查询中出错了。。等一下,我正在更新。非常感谢您的查询。老实说,这,php,jquery,mysql,sql,charts,Php,Jquery,Mysql,Sql,Charts,4-08-04-2014-08-07将点记录从2014-07-26和访问从2014-07-21返回给我。我使用的查询与您的小提琴所包含的查询完全相同。@radial\u活动哦,好的,很抱歉我在查询中出错了。。等一下,我正在更新。非常感谢您的查询。老实说,这是一个最接近完美的例子,但它有soe问题,因为我已经测试了日期。如果我在查询中保存日期,它会返回错误的结果。我想那里少了些什么。你能帮我再检查一下吗?:)@激进的活动好的,你包括什么日期,它看起来像什么?您需要在案例陈述中添加新的日期范围。。复
4-08-04-
2014-08-07
将点
记录从2014-07-26
和访问从2014-07-21
返回给我。我使用的查询与您的小提琴所包含的查询完全相同。@radial\u活动哦,好的,很抱歉我在查询中出错了。。等一下,我正在更新。非常感谢您的查询。老实说,这是一个最接近完美的例子,但它有soe问题,因为我已经测试了日期。如果我在查询中保存日期,它会返回错误的结果。我想那里少了些什么。你能帮我再检查一下吗?:)@激进的活动好的,你包括什么日期,它看起来像什么?您需要在案例陈述中添加新的日期范围。。复制其中一行,并执行相同的操作,只是为每行增加一部分one@Radical_Activity如果你能用你正在使用的确切查询编辑你的问题,我可以看一下。我说的是你的小提琴。尝试更改日期,如第二个日期从2014-08-04
更改为2014-08-05
。它返回3个结果。而且,当我玩过约会的时候,它也给了我奇怪的结果。我也用我的数据试过了,而且2014-08-04
-2014-08-07
还给了我2014-07-26
和2014-07-21
的访问记录。我使用的查询与您的小提琴所包含的查询完全相同。@radial\u活动哦,好的,很抱歉我在查询中出错了。。一秒钟后我会更新它。
+-------+-------------------+-----------+
| id | date | user_id |
+-------+-------------------+-----------+
| 1 |2014-08-01 05:23:00| 43 |
| 2 |2014-08-01 14:41:00| 21 |
| 3 |2014-08-02 23:54:00| 43 |
| 4 |2014-08-03 03:21:00| 43 |
| 5 |2014-08-03 04:19:00| 34 |
| 6 |2014-08-03 11:33:00| 43 |
| 7 |2014-08-04 12:21:00| 43 |
| 8 |2014-08-05 01:55:00| 43 |
| 9 |2014-08-06 06:13:00| 43 |
| 10 |2014-08-07 19:47:00| 43 |
+-------+-------------------+-----------+
+-------+-------------------+-----------+-------+----------+
| id | date | user_id | points| status |
+-------+-------------------+-----------+-------+----------+
| 1 |2014-08-01 04:33:00| 43 | 10 | 0 |
| 2 |2014-08-02 05:21:00| 21 | 23 | 0 |
| 3 |2014-08-02 09:01:00| 43 | 32 | 1 |
| 4 |2014-08-02 01:21:00| 43 | 21 | 0 |
| 5 |2014-08-03 23:23:00| 34 | 54 | 0 |
| 6 |2014-08-04 20:34:00| 43 | 11 | 0 |
| 7 |2014-08-04 17:54:00| 43 | 9 | 0 |
| 8 |2014-08-04 03:45:00| 43 | 34 | 0 |
| 9 |2014-08-06 08:23:00| 43 | 76 | 0 |
| 10 |2014-08-07 11:43:00| 43 | 52 | 0 |
+-------+-------------------+-----------+-------+----------+
+---------------------+-----------+-------+-------+-------------+
| date | user_id | points| visits| points_count|
+---------------------+-----------+-------+-------+-------------+
|2014-08-01-2014-08-03| 43 | 31 | 4 | 2 |
|2014-08-04-2014-08-07| 43 | 182 | 4 | 5 |
+---------------------+-----------+-------+-------+-------------+
select count(id)
from visits
join points on points.user_id = visits.user_id
where date between 2014-08-04 00:00:00 and 2014-08-07 00:00:00
and visits.user_id = 43
SELECT *
FROM
(SELECT
count(v.id) AS visit_count,
count(p.id) AS point_count,
sum(p.points) AS points
FROM visits v1
JOIN points p1
ON v1.user_id = p1.user_id
WHERE v1.user_id = 43
AND DATE(v1.date) BETWEEN '2014-08-01' AND '2014-08-03'
AND p1.status = 0
UNION ALL
SELECT
count(v.id) AS visit_count,
count(p.id) AS point_count,
sum(p.points) AS points
FROM visits v2
JOIN points p2
ON v2.user_id = p2.user_id
WHERE v2.user_id = 43
AND DATE(v2.date) BETWEEN '2014-08-04' AND '2014-08-07'
AND p2.status = 0
) temp
SELECT
t.join_date as 'Time Frame',
t1.user_id,
t.num_visits,
t1.num_points,
t1.total_points
FROM
( SELECT
CASE
WHEN DATE(date) >= '2014-06-01' AND DATE(date) <= '2014-07-10' THEN 1
WHEN DATE(date) >= '2014-08-05' AND DATE(date) <= '2014-08-07' THEN 2
ELSE 3
END AS grouping_col,
CONCAT(MIN(DATE(date)), ' - ', MAX(DATE(date))) as join_date,
COUNT(id) as num_visits
FROM visits
WHERE user_id = 43
GROUP BY grouping_col
)t
LEFT JOIN
( SELECT
CASE
WHEN DATE(date) >= '2014-06-01' AND DATE(date) <= '2014-07-10' THEN 1
WHEN DATE(date) >= '2014-08-05' AND DATE(date) <= '2014-08-07' THEN 2
ELSE 3
END AS grouping_col,
CONCAT(MIN(DATE(date)), ' - ', MAX(DATE(date))) as join_date,
user_id,
COUNT(id) as num_points,
SUM(points) as total_points
FROM points
WHERE user_id = 43
AND status = 0
GROUP BY grouping_col
)t1 ON t1.grouping_col = t.grouping_col
WHERE t.grouping_col IN(1, 2) OR t1.grouping_col IN(1, 2)