sql - 如何找到当前工作的所有员工并使用循环选择他们
问题描述
我正在尝试实现一个员工任务分配应用程序。
我的 SQL 服务器数据库中有一个员工轮班详细信息表。我需要选择当前时间的员工,并使用轮询调度从当前轮班的员工列表中选择一名员工来完成一项任务
CREATE TABLE [dbo].[Tbl_Shift_Details](
[ID] [bigint] IDENTITY(1,1) NOT NULL,
[Shift_Type] [varchar](10) NOT NULL,
[Week_day] [int] NOT NULL,
[Login_Time] [varchar](5) NULL,
[Logout_Time] [varchar](5) NULL,
[Assignees_Name] [varchar](100) NULL,
[Assignees_Email] [varchar](500) NULL,
[Team_Lead_Email] [varchar](30) NULL
) ON [PRIMARY]
GO
我可以使用以下查询选择当前工作的员工
SELECT *
FROM [dbo].[Tbl_Shift_Details]
WHERE Week_day = DATEPART(weekday, Dateadd(hh,-5.00,getdate())) and
((Logout_Time > Login_Time and
DATEPART(HOUR,Dateadd(hh,-5.00,getdate())) >= Login_Time and
DATEPART(HOUR,Dateadd(hh,-5.00,getdate())) <= Logout_Time) or
(Logout_Time < Login_Time and DATEPART(HOUR,Dateadd(hh,-5.00,getdate())) >= Login_Time)
);
这个查询输出这个
+----+------------+----------+------------+-------------+-----------------+--------------------------+--------------------------+
| ID | Shift_Type | Week_day | Login_time | Logout_Time | Assignees_Name | Assignees_Email | Team_Lead_Email |
+----+------------+----------+------------+-------------+-----------------+--------------------------+--------------------------+
| 1 | 1st | 2 | 8 | 18 | John Doe | johndoe@aol.com | jimmykimmel@fun.com |
| 7 | 2nd | 2 | 12 | 21 | Noah Arc | Noaharc@aol.com | jimmykimmel@fun.com |
| 11 | 3rd | 2 | 15 | 24 | John Everyman | johneveryman@gmail.com | BodrumSalvador@yahoo.com |
| 16 | 2nd | 2 | 12 | 21 | Theodore Handle | theodorehandle@yahoo.com | BodrumSalvador@yahoo.com |
| 21 | 3rd | 2 | 15 | 24 | Sue Shei | SueShei@dxc.com | jimmykimmel@fun.com |
+----+------------+----------+------------+-------------+-----------------+--------------------------+--------------------------+
我一次只需要使用循环选择一名员工。我可以在 SQL 服务器本身内部执行此操作吗?
解决方案
推荐阅读
- javascript - javascript 从数据表中计算每日发生次数以创建折线图
- iis - 启用 32 位时 IIS 应用程序池停止
- java - 为什么在构建 Gradle 项目时会出现此错误?使用 gradle 3.5 版
- r - 如何在 R 中读取 .dat 文件中的二进制数据?使用 readBin 时出错
- django - Django Channels Websocket 组名
- java - Redis缓存主体对象问题
- c# - Mono - Crystal 报告运行时版本未加载
- reactjs - 无法使用地图功能在 react-google-maps 上加载多个标记
- xslt - 如何在 A4 页面中创建边框和 fo:block 圆角使用 - XSL-FO
- python - 如何在标签中使用python当前日期显示