Buenas. Tengo el siguiente codigo
Código SQL:
Ver originalCREATE PROCEDURE ejemplo1
AS BEGIN
DECLARE @fDesde DATETIME, @fHasta DATETIME
SELECT @fDesde = '20010101', @fhasta = '20111205'
;WITH
l0 AS(SELECT 0 AS c UNION ALL SELECT 0),
l1 AS(SELECT 0 AS c FROM l0 AS a, l0 AS b),
l2 AS(SELECT 0 AS c FROM l1 AS a, l1 AS b),
l3 AS(SELECT 0 AS c FROM l2 AS a, l2 AS b),
l4 AS(SELECT 0 AS c FROM l3 AS a, l3 AS b),
l5 AS(SELECT 0 AS c FROM l4 AS a, l4 AS b),
l6 AS(SELECT 0 AS c FROM l5 AS a, l5 AS b),
nums AS(SELECT ROW_NUMBER() OVER(ORDER BY c) AS n FROM l6)
INSERT TABLA_1(nombre)
SELECT DATEADD(DAY, nums.n - 1, @fDesde)
FROM nums WHERE n <= DATEDIFF(DAY, @fDesde, @fHasta) + 1
END
Lo que pasa es que me inserta en en la tabla los siguientes valores en el campo:
_____Nombre______ _____ANIO_____ _____MES_____ _____DIA____
Ene 1 2001 12:00AM NULL NULL NULL
bueno me llena varios registros pero con ese formato.
Como puedo hacer para insertar en AÑO el año de esa fecha así como también en MES y DÍA.
Es decir insertar por ejemplo lo siguiente a la tabla TABLA_1
('Ene 1 2001 12:00AM ',2001,1,1)
espero haberme explicado, gracias