如何在 SQL Server 查询中排除周末?
原文:https://www . geeksforgeeks . org/如何排除周末天数-SQL server-query/
通过这篇文章,我们将了解如何在 SQL server 查询中排除周末。对于这个任务,我们使用 DATEADD ( ) MS.SQL server 函数。SQL Server 中的这个函数用于总结到指定日期的时间或日期间隔,然后返回修改后的日期。
语法:
DATEADD(interval, number, date)
因此,我们将首先创建一个数据库:
步骤 1:创建数据库:
查询:
CREATE DATABASE GFG
步骤 2:使用数据库
USE GFG
第三步:创建表格
在数据库中创建一个表(雇员贷方)来存储数据。
CREATE TABLE EmployeeCalender (
EmpCalDate datetime NOT NULL ,
IsBusinessDay char (1)
)
第 4 步:将数据插入表格
查询:
/* Data Inserted for a full week dates*/
INSERT INTO EmployeeCalender (EmpCalDate, IsBusinessDay) VALUES ('9/06/2021','Y')
INSERT INTO EmployeeCalender (EmpCalDate, IsBusinessDay) VALUES ('9/07/2021','Y')
INSERT INTO EmployeeCalender (EmpCalDate, IsBusinessDay) VALUES ('9/08/2021','Y')
INSERT INTO EmployeeCalender (EmpCalDate, IsBusinessDay) VALUES ('9/09/2021','Y')
INSERT INTO EmployeeCalender (EmpCalDate, IsBusinessDay) VALUES ('9/10/2021','Y')
INSERT INTO EmployeeCalender (EmpCalDate, IsBusinessDay) VALUES ('9/11/2021','N')
INSERT INTO EmployeeCalender (EmpCalDate, IsBusinessDay) VALUES ('9/12/2021','N')
第五步:现在我们将编写 SQL 查询,它将获得除非工作日之外的所有工作日。
查询:
SELECT * FROM EmployeeCalender WHERE EmpCalDate >= DATEADD(d,-7,GETDATE())
AND
EmpCalDate < DATEADD(d,7,GETDATE())
AND
IsBusinessDay ='Y'
不包括周末的日期输出
版权属于:月萌API www.moonapi.com,转载请注明出处