gpt4 book ai didi

mysql - 如何计算小时之间的总数 - MySQL

转载 作者:行者123 更新时间:2023-11-29 18:44:43 25 4
gpt4 key购买 nike

我有一个像这样的Mysql表

|Doctor_id | login_hour | logout_hour |
------- ----------- -----------
12 10 12
13 11 13
14 09 13
15 13 14

我想知道每小时有多少位医生排类。如果医生的日程安排在 11 点到 13 点之间,他应该在 11 点和 12 点出现。请让我知道如何在 MySQL 中执行此操作

输出应该是这样的

Hour | Number_of_doctors
---- -----------------
10 2
11 3
12 2
13 1

最佳答案

您可以使用内部SELECT,例如:

SELECT DISTINCT t.login_hour,
(SELECT COUNT(*) FROM doctors WHERE login_hour <= t.login_hour AND logout_hour
> t.login_hour) AS number_of_doctors
FROM doctors t
ORDER BY t.login_hour;

这是SQL Fiddle

更新

这假设至少有一名医生已登录(正如草莓所说的那样)。如果您想要在任何给定时间登录的医生总数,则可以使用以下查询:

SELECT COUNT(*) 
FROM doctors WHERE login_hour <= ? AND logout_hour > ?;

关于mysql - 如何计算小时之间的总数 - MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44719483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com