拥有一张大桌子 T 的这一部分;
+---------------+------------+
| session_id | visit_time |
+---------------+------------+
| 4f89cebc109f9 | 1334431476 |
| 4f89cf283d21c | 1334431528 |
| 4f89cf283d21c | 1334431534 |
| 4f89cf3b350a6 | 1334431547 |
| 4f89cf42ab640 | 1334431554 |
+---------------+------------+
我想在工作日找到 session_id 的数量。Session_id 不是主键。所以我尝试了:
select count(distinct(session_id)) from T group by weekday(from_unixtime(time))
但这不起作用,因为如果相同session_id
的visit_time
两个星期天有相同的星期天,那么它将它们计为1
,尽管当相同的星期天有相同的星期天时它正确地计session_id
为1 visit_time
。
预期的事情是:我想知道有多少 session-ids 访问日为 sun、mon 等。如果 session_id 在两个不同的星期天访问过,那么它们被计算两次,但如果在同一个星期天,那么只有 1 个计数。那么我该如何在 Mysql 中做到这一点?