¿Cómo excluir los días de fin de semana en una consulta de SQL Server?

Con este artículo, aprenderemos cómo excluir los días de fin de semana en una consulta del servidor SQL. Para esta tarea, usamos la función de servidor MS.SQL DATEADD ( ) . Esta función en SQL Server se usa, para resumir, un intervalo de tiempo o fecha a una fecha específica y luego devuelve la fecha modificada.

Sintaxis:

DATEADD(interval, number, date)

Entonces, primero crearemos una base de datos:

Paso 1: Crear base de datos:

Consulta:

CREATE DATABASE GFG

Paso 2: Uso de la base de datos 

USE GFG

Paso 3: crea una tabla 

Cree una tabla (EmployeeCalender) en la base de datos para almacenar los datos.

CREATE TABLE EmployeeCalender (
 EmpCalDate datetime NOT NULL ,
 IsBusinessDay char (1)
)

Paso 4: Insertar datos en una tabla

Consulta:

/* 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')

Paso 5: Ahora escribiremos la consulta SQL que obtendrá todos los días de la semana excepto los días no laborables.

Consulta:

SELECT * FROM EmployeeCalender WHERE EmpCalDate >= DATEADD(d,-7,GETDATE())
AND
EmpCalDate < DATEADD(d,7,GETDATE())
AND
IsBusinessDay ='Y'

La salida de fechas excluyendo fines de semana.

Publicación traducida automáticamente

Artículo escrito por idevesh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *