SQL TAKVIM CALISMA SAATLI

  CREATE VIEW [dbo].[BM_TAKVIM] AS
WITH Calender AS (
    SELECT CAST('2019-01-01' AS DATETIME) AS dt
    UNION ALL
    SELECT dt + 1 FROM Calender
    WHERE dt + 1 <=  CAST('2029-12-31' AS DATETIME)
)
SELECT
CONVERT(VARCHAR, DATEFROMPARTS(YEAR(dt),MONTH(dt) , DAY(DT)), 112) G112,
dt




,CASE
WHEN DATENAME (MONTH,dt)='January' THEN 'Ocak'
WHEN DATENAME (MONTH,dt)='February' THEN 'Şubat'
WHEN DATENAME (MONTH,dt)='March' THEN 'Mart'
WHEN DATENAME (MONTH,dt)='April' THEN 'Nisan'
WHEN DATENAME (MONTH,dt)='May' THEN 'Mayıs'
WHEN DATENAME (MONTH,dt)='June' THEN 'Haziran'
WHEN DATENAME (MONTH,dt)='July' THEN 'Temmuz'
WHEN DATENAME (MONTH,dt)='August' THEN 'Ağustos'
WHEN DATENAME (MONTH,dt)='September' THEN 'Eylül'
WHEN DATENAME (MONTH,dt)='October' THEN 'Ekim'
WHEN DATENAME (MONTH,dt)='November' THEN 'Kasım'
WHEN DATENAME (MONTH,dt)='December' THEN 'Aralık' ELSE '' END Ay
,CASE WHEN DATENAME (WEEKDAY,dt)='Monday' THEN 'Pazartesi'
WHEN DATENAME (WEEKDAY,dt)='Tuesday' THEN 'Salı'
WHEN DATENAME (WEEKDAY,dt)='Wednesday' THEN 'Çarşamba'
WHEN DATENAME (WEEKDAY,dt)='Thursday' THEN 'Perşembe'
WHEN DATENAME (WEEKDAY,dt)='Friday' THEN 'Cuma'
WHEN DATENAME (WEEKDAY,dt)='Saturday' THEN 'Cumartesi'
WHEN DATENAME (WEEKDAY,dt)='Sunday' THEN 'Pazar' ELSE '' END Gün
,Hafta = DATEPART(WEEK, dt) ,
CASE WHEN DATENAME (WEEKDAY,dt)='Saturday'  THEN '05:00'   WHEN DATENAME (WEEKDAY,dt)='Sunday'  THEN '00:00' ELSE '09:00' END NM,
 CASE WHEN DATENAME (WEEKDAY,dt)='Saturday'  THEN '13:00'   WHEN DATENAME (WEEKDAY,dt)='Sunday'  THEN '00:00' ELSE '17:00' END MS

 FROM Calender

GO

--SELECT * FROM BM_TAKVIM WITH(NOLOCK) OPTION  ( MAXRECURSION 0 )

CALCULATE SQL ROWS

/****** Object:  StoredProcedure [dbo].[CALCULATEROWS]    Script Date: 22.01.2019 15:49:46 ******/
-- EXEC [CALCULATEROWS]
SET ANSI_NULLS ON;
GO

SET QUOTED_IDENTIFIER ON;
GO

CREATE PROC [dbo].[CALCULATEROWS]
AS
IF NOT EXISTS
(
    SELECT TOP 1
           1
    FROM INFORMATION_SCHEMA.TABLES
    WHERE TABLE_TYPE = 'BASE TABLE'
          AND TABLE_NAME = '_ROWCOUNTS'
)
BEGIN
    CREATE TABLE _ROWCOUNTS
    (
        TABLENAME VARCHAR(255) NULL,
        OLDROWCOUNT INT NULL,
        NEWROWCOUNT INT NULL
    );
END;

CREATE TABLE #COUNTS
(
    TABLENAME VARCHAR(255),
    ROWCOUNT_ INT
);

EXEC sp_MSforeachtable @command1 = 'INSERT #COUNTS (TABLENAME, ROWCOUNT_) SELECT "?", COUNT(*) FROM ?';

DECLARE @CRSR CURSOR;
DECLARE @TN NVARCHAR(250);
BEGIN
    SET @CRSR = CURSOR FOR
    SELECT TABLENAME
    FROM #COUNTS;

    OPEN @CRSR;
    FETCH NEXT FROM @CRSR
    INTO @TN;

    WHILE @@FETCH_STATUS = 0
    BEGIN

        IF NOT EXISTS (SELECT TOP 1 1 FROM _ROWCOUNTS WHERE TABLENAME = @TN)
        BEGIN
            INSERT INTO _ROWCOUNTS
            (
                TABLENAME,
                OLDROWCOUNT,
                NEWROWCOUNT
            )
            VALUES
            (   @TN,
                (
                    SELECT TOP 1 ROWCOUNT_ FROM #COUNTS WHERE TABLENAME = @TN
                ),
                (
                    SELECT TOP 1 ROWCOUNT_ FROM #COUNTS WHERE TABLENAME = @TN
                ));
        END;
        ELSE
        BEGIN
            UPDATE _ROWCOUNTS
            SET OLDROWCOUNT = NEWROWCOUNT
            WHERE TABLENAME = @TN;
            UPDATE _ROWCOUNTS
            SET NEWROWCOUNT =
                (
                    SELECT TOP 1 ROWCOUNT_ FROM #COUNTS WHERE TABLENAME = @TN
                )
            WHERE TABLENAME = @TN;
        END;

        FETCH NEXT FROM @CRSR
        INTO @TN;
    END;

    CLOSE @CRSR;
    DEALLOCATE @CRSR;
END;

DROP TABLE #COUNTS;
SELECT *,
       (NEWROWCOUNT - OLDROWCOUNT) AS DIFFERENCE_
FROM _ROWCOUNTS
WHERE (NEWROWCOUNT - OLDROWCOUNT) > 0
ORDER BY DIFFERENCE_ DESC;

GO

sql server -20122014 express download