DROP PROCEDURE IF EXISTS uspGetOsztalyCsoportokLetszama GO CREATE PROCEDURE uspGetOsztalyCsoportokLetszama @pIntezmenyId INT ,@pTanevId INT AS BEGIN SET NOCOUNT ON DECLARE @sql NVARCHAR(2000) SET @sql = N' SELECT osztalyCsoport.ID ID ,osztalyCsoport.C_NEV Nev ,osztalyCsoport.C_EVFOLYAMTIPUSA Evfolyam ,IIF(csoport.ID IS NOT NULL, ''Csoport'', ''Osztály'') Tipus ,csoport.C_TIPUSA CsoportTipus ,osztalybontas.C_Nev Osztalybontas ,COUNT(tanuloCsoport.ID) TanulokSzama FROM T_OSZTALYCSOPORT_OSSZES osztalyCsoport LEFT JOIN T_CSOPORT_OSSZES csoport ON csoport.ID = osztalyCsoport.ID AND csoport.TOROLT = ''F'' LEFT JOIN T_OSZTALYCSOPORT_OSSZES osztalybontas ON osztalybontas.ID = csoport.C_OSZTALYBONTASID AND osztalybontas.TOROLT = ''F'' LEFT JOIN T_OSZTALY_OSSZES osztaly ON osztaly.ID = osztalyCsoport.ID AND osztaly.TOROLT = ''F'' LEFT JOIN T_TANULOCSOPORT_OSSZES tanuloCsoport ON tanuloCsoport.C_OSZTALYCSOPORTID = osztalyCsoport.ID AND tanuloCsoport.TOROLT = ''F'' AND tanuloCsoport.C_BELEPESDATUM <= GETDATE() AND (tanuloCsoport.C_KILEPESDATUM IS NULL OR tanuloCsoport.C_KILEPESDATUM >= GETDATE()) WHERE osztalyCsoport.TOROLT = ''F'' AND osztalyCsoport.C_INTEZMENYID = @pIntezmenyId AND osztalyCsoport.C_TANEVID = @pTanevId GROUP BY osztalyCsoport.ID, csoport.ID, osztalyCsoport.C_NEV, osztalyCsoport.C_EVFOLYAMTIPUSA, csoport.C_TIPUSA, csoport.C_OSZTALYBONTASID, osztalybontas.C_NEV' EXEC sys.Sp_executesql @sql, N' @pIntezmenyId int ,@pTanevId int' ,@pIntezmenyId ,@pTanevId END GO