Hola y feliz día tarde o noche según donde me leas, hoy traigo una breve explicación fácil y sencilla en la cual lograras Crear tabla calendario en SQL con T-SQL de manera practica.
Empezamos!!!!
- Lo primero es colocarnos en contexto de manera fácil , en este ejemplo digamos que sabemos la fecha inicio y la fecha fin y deseamos con esas dos fechas crear un calendario. Primero debemos montar las variables que almacenen ambas fechas
- Como vemos usamos with el cual le colocaremos el nombre calendario pero en este caso le colocaremos y acompañado del as, dentro de este llamamos a la primera variable y le colocamos un alias en el ejemplo [Fecha]
- Luego de ellos hacemos un union all y seleccionamos el dateadd() el cual nos permitirá hacer el listado día a día del año entero colocamos dd, días el numero uno y el alias fecha
- Luego referenciamos al cte que en este caso es calendario y en el where le colocamos que la asignación de estas fechas no supere el fecha fin
- Por ultimo en mi caso arrojo error mucha veces así que tenemos la opción OPTION recursión que en el cte solo corre 100 así que la modificamos a 600 le coloque pero pero solo correrá 365 veces que son los días del año
Con estos sencillos pasos lograste practicar y crear consultas, Crear tabla calendario en SQL con T-SQL.
Aca comparto el codigo:
DECLARE @FechaInicio DATE = ‘2023-01-01’
DECLARE @FechaFin DATE = ‘2023-12-31’
;WITH Calendario AS (
SELECT @FechaInicio AS Fecha
UNION ALL
SELECT DATEADD(dd, 1, Fecha)
FROM Calendario
WHERE DATEADD(dd, 1, Fecha)<=@FechaFin
)
SELECT *
FROM Calendario
Vicente Antonio Juan Magallanes
Business Intelligence Technical.
Perfil linkedin.