小编und*_*man的帖子

SUM() 忽略 GROUP BY 并总结 4 行而不是 2

GROUP BY在 MySQL中遇到困难。

我的数据库设置:

client_visit
    - id
    - member_id
    - status_type_id (type_of_visit table)
    - visit_starts_at
    - visit_ends_at

member
    - id

schedule_event
    - id
    - member_id
    - starts_at
    - ends_at

type_of_visit
    - id
    - type (TYPE_BOOKED, TYPE_PRESENT etc)
Run Code Online (Sandbox Code Playgroud)

就这个问题而言:a在给定时间member教一门课或领导一项活动 (a schedule_event)。Aclient报名参加此课程或活动。

例如:

客户 A、B 和 C 预订访问,而那些访问client_visitschedule_event_id和组成的表member_id,因此我们知道哪个班级和哪个成员正在教授/或进行活动。

现在,我们想知道给定成员花费在客户注册的教学/领导活动上的总时间(基于client_visit type_of_visit相当于“预订”或“出席”的列)。我们将把成员 ID 82 作为我们的测试用例。

会员 ID 82 在两个不同的班级有 4 个客户,所以如果每个班级花费 2 小时 15 分钟(8100 秒),那么总时间应该是 16200 秒。

首先是我的查询: …

mysql group-by sum

6
推荐指数
2
解决办法
3万
查看次数

为什么在 MySQL 中使用 JSON_EXTRACT 时 0/false 返回 true

我有一个条件来选择一个错误的 JSON 文档值。

我的行:

1. {"my_value": false}
2. {"my_value": 0}
3. {"my_value": "0"}
4. {"my_value": null}
5. {"my_value": true} // this one got selected
Run Code Online (Sandbox Code Playgroud)

我的查询:

SELECT * FROM my_table
WHERE JSON_UNQUOTE(JSON_EXTRACT(my_column, '$.my_value')) = false
Run Code Online (Sandbox Code Playgroud)

即使true有价值,第 5 行也会被选中。我怎样才能防止这种情况?

版本是 MySQL 8.0.25。

mysql query json mysql-8.0

3
推荐指数
1
解决办法
325
查看次数

标签 统计

mysql ×2

group-by ×1

json ×1

mysql-8.0 ×1

query ×1

sum ×1