【发布时间】:2019-01-16 18:06:14
【问题描述】:
我想根据用户自己的时间范围选择行。
假设我有两张桌子。第一个是关于用户活动日志数据的。
| user_id | date | activity |
|:-----------|------------:|:------------:|
| 1 | 1/1/18 | a1 |
| 1 | 2/12/18 | a2 |
| 1 | 3/21/18 | a3 |
| 2 | 1/13/18 | b1 |
| 2 | 2/4/18 | b2 |
| 2 | 3/24/18 | b3 |
第二个表是我要为每个用户提取的时间范围 user_id, start_date, end_date
1, 1/1/18, 3/1/18
2, 2/1/18, 4/1/18
预期的结果是 user_id、日期、活动
1, 1/1/18, a1
1, 2/12/18, a2
2, 2/4/18, b2
2, 3/24/18, b3
【问题讨论】:
-
我假设这里的日期列是 varchar 或 char 数据类型。最好转换为使用日期、日期时间或时间数据类型,否则无法正确或轻松地比较时间范围
-
为什么
2 | 1/13/18 | b1不在结果集中? -
将日期存储为日期并查看meta.stackoverflow.com/questions/333952/…
标签: mysql