我想检索时间跨度之间的记录,我所拥有的只是这段指示时间跨度的字符串
9:00 AM - 10:00 AM
下面是表架构
CREATE TABLE [dbo].[Samples](
[RID] [int] IDENTITY(1,1) NOT NULL,
[PersonName[nvarchar](20) NOT NULL,
[NOT_AVL_DATE] [datetime] NULL,
[NOT_AVL_FOR] [int] NULL
)
简介: Rid 是主键,PersonName 是员工/员工/技术人员姓名,NOT_AVL_Date 是员工不可用的日期时间,NOT_AVL_FOR 代表员工不可用的时间跨度。1 - 全天请假 2- 前半天请假 3 - 后半天请假
要求: 给定时间跨度,我希望在该时间跨度内没有休假的员工。有人可以构建一个完整的声明吗,我的脑袋在想这个……谢谢你的帮助
Deeptechtons,我们真的很想看到你的答案,但由于你还没有发布它,这里是它可以做到的方式。此 SQL 用于 Oracle 而不是 SQL Server,因此必须进行翻译。您的帖子中缺少详细信息,因此使用的某些假设可能无效。
样本数据:
哎呀抱歉,我正在巡回演出很高兴许多人更新了帖子。简单地说,如果它是前端 [Presentation Layer] 的 Am / Pm,我将过滤时间跨度,这将推断为 0,1 或 2。然后在数据访问层上,我执行此 NOT_AVL_FOR <> @FrontendParameter。因此,我让可以分配工作时间段的工作人员。这可能不符合您的确切需求,但大多数时候,如果不是这样,前端可以回答复杂的查询