none
¿Como puedo unir los resultados en una sola consulta ? RRS feed

  • Pregunta

  • Tengo un problema con el procedimiento, por que al no estar en una sola consulta al querer realizar un Grid de DvExpress, solo me toma la primera consulta

    CREATE PROCEDURE [dbo].[AsistenciaDeMaestros] (@datFechaInicial DATE, @datFechaFinal DATE ) AS BEGIN SET NOCOUNT ON; WHILE(@datFechaInicial<=@datFechaFinal) BEGIN IF ((DATEPART(dw,@datFechaInicial)=1) OR(DATEPART(dw,@datFechaInicial)=2)OR (DATEPART(dw,@datFechaInicial)=3)OR (DATEPART(dw,@datFechaInicial)=4)OR(DATEPART(dw,@datFechaInicial)=5)) BEGIN SELECT strDia=(DATENAME(dw, @datFechaInicial)),strFecha=(@datFechaInicial) END SET @datFechaInicial=DATEADD(day, 1, @datFechaInicial) END END

    sábado, 15 de octubre de 2016 16:40

Respuestas

  • athame55,

    Cambia tu procedimiento almacenado por el siguiente:

    CREATE PROCEDURE dbo.AsistenciaDeMaestros
        @datFechaInicial date,
        @datFechaFinal date
    AS
    BEGIN
        SET NOCOUNT ON;
        
        WITH Fechas AS
        (
    	   SELECT @datFechaInicial AS 'Fecha'
    	   UNION ALL
    	   SELECT DATEADD(DAY, 1, Fecha) FROM Fechas WHERE (Fecha < @datFechaFinal) 	   
        )
        SELECT 
    	   Fecha, DATENAME(WEEKDAY, Fecha) 
        FROM Fechas WHERE DATEPART(dw, Fecha) BETWEEN 1 AND 5
        OPTION (MAXRECURSION 0);
    END
    


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    sábado, 15 de octubre de 2016 18:51