kreta/Kreta.DataAccess.Migrations/DBScripts/Database/dbo/Stored procedures/uspGetCalendarMinMax.sql
2024-03-13 00:33:46 +01:00

45 lines
1.9 KiB
Transact-SQL

-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
DROP PROCEDURE IF EXISTS dbo.uspGetCalendarMinMax
GO
CREATE PROCEDURE dbo.uspGetCalendarMinMax
@pIntezmenyId int,
@pTanevId int
AS
BEGIN
SET NOCOUNT ON;
SELECT
MIN(Ertek) Minimum,
MAX(Ertek) Maximum
FROM
(
SELECT
CASE
WHEN MIN(CONVERT(TIME, C_ORAERVENYESSEGKEZDETE)) = '00:00:00.0000000' THEN NULL
ELSE MIN(CONVERT(TIME, C_ORAERVENYESSEGKEZDETE))
END C_ORAERVENYESSEGKEZDETE_MIN,
MIN(CONVERT(TIME, T_CSENGETESIRENDORA_OSSZES.C_KEZDETE)) T_CSENGETESIRENDORA_MIN,
MIN(CONVERT(TIME, C_ORAKEZDETE)) C_ORAKEZDETE_MIN,
(SELECT MIN(CONVERT(TIME, C_ORAKEZDETE)) FROM T_TEVEKENYSEG) C_ORAKEZDETE_TEVEKENYSEG_MIN,
CASE
WHEN MAX(CONVERT(TIME, C_ORAERVENYESSEGVEGE)) = '00:00:00.0000000' THEN NULL
ELSE MAX(CONVERT(TIME, C_ORAERVENYESSEGVEGE))
END C_ORAERVENYESSEGVEGE_MAX,
MAX(CONVERT(TIME, T_CSENGETESIRENDORA_OSSZES.C_VEGE)) T_CSENGETESIRENDORA_MAX,
MAX(CONVERT(TIME, C_ORAVEGE)) C_ORAVEGE_MAX,
(SELECT MAX(CONVERT(TIME, C_ORAVEGE)) FROM T_TEVEKENYSEG) C_ORAVEGE_TEVEKENYSEG_MAX
FROM
T_ORARENDIORA_OSSZES
LEFT JOIN T_CSENGETESIRENDORA_OSSZES ON T_CSENGETESIRENDORA_OSSZES.ID = T_ORARENDIORA_OSSZES.C_CSENGETESIRENDORAID AND T_CSENGETESIRENDORA_OSSZES.C_INTEZMENYID = @pIntezmenyId AND T_CSENGETESIRENDORA_OSSZES.C_TANEVID = @pTanevId AND T_CSENGETESIRENDORA_OSSZES.TOROLT = 'F'
WHERE T_ORARENDIORA_OSSZES.C_INTEZMENYID = @pIntezmenyId AND T_ORARENDIORA_OSSZES.C_TANEVID = @pTanevId AND T_ORARENDIORA_OSSZES.TOROLT = 'F'
) BelsoNev
UNPIVOT (Ertek FOR Nev IN ([C_ORAERVENYESSEGKEZDETE_MIN],[T_CSENGETESIRENDORA_MIN],[C_ORAKEZDETE_MIN],[C_ORAERVENYESSEGVEGE_MAX],[T_CSENGETESIRENDORA_MAX],[C_ORAVEGE_MAX])) KulsoNev
END
GO