100 lines
2.9 KiB
MySQL
100 lines
2.9 KiB
MySQL
![]() |
CREATE PROCEDURE YSQKGKSBU_GZTH
|
|||
|
@FSDate NVARCHAR(100),
|
|||
|
@FEDate NVARCHAR(100)
|
|||
|
AS
|
|||
|
BEGIN
|
|||
|
DECLARE @SumDQJE DECIMAL(23,10)
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
DECLARE @FEDateDate DATE;
|
|||
|
|
|||
|
--<EFBFBD>ж<EFBFBD>@FEDate<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>Ϊ<EFBFBD><EFBFBD>
|
|||
|
IF @FEDate IS NULL OR @FEDate = ''
|
|||
|
BEGIN
|
|||
|
SET @FEDateDate = GETDATE();
|
|||
|
END
|
|||
|
ELSE
|
|||
|
BEGIN
|
|||
|
-- ת<><D7AA>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
SET @FEDateDate = CONVERT(DATE, @FEDate);
|
|||
|
END
|
|||
|
|
|||
|
-- <20><>ȡ<EFBFBD><C8A1>һ<EFBFBD><D2BB><EFBFBD><EFBFBD> 12 <20><> 31 <20><>
|
|||
|
SET @FEDateDate = DATEFROMPARTS(YEAR(@FEDateDate) - 1, 12, 31);
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD><EFBFBD>ձ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
TRUNCATE TABLE YSQKGK_SBU_GZTH
|
|||
|
--<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ĵ<EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
SELECT [SBU],SUM([<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>]) AS '<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>' INTO #NCTEMP1 FROM ZRP_YingShouMingXi_yuyubo
|
|||
|
WHERE [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>] <= @FEDateDate
|
|||
|
GROUP BY [SBU]
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD><EFBFBD>뵽<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ĵ<EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
INSERT INTO YSQKGK_SBU_GZTH([SBU],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>])
|
|||
|
SELECT [SBU],[<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>] FROM #NCTEMP1 WHERE [<5B><><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>] <> 0
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ĵ<EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>=Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>
|
|||
|
SELECT [SBU],SUM([<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>]) AS '<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>' INTO #NCZZTEMP1 FROM ZRP_YingShouMingXi_yuyubo
|
|||
|
WHERE [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>] <= @FEDateDate AND [<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>] = 'Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>'
|
|||
|
GROUP BY [SBU]
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD><EFBFBD>뵽<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ĵ<EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>=Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>
|
|||
|
INSERT INTO YSQKGK_SBU_GZTH([SBU],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>])
|
|||
|
SELECT [SBU],[<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>] FROM #NCZZTEMP1 WHERE [<5B><><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>] <> 0
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȵ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
SELECT [SBU],SUM([<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>]) AS '<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>' INTO #BNTEMP1
|
|||
|
FROM ZRP_YingShouMingXi_yuyubo
|
|||
|
WHERE
|
|||
|
format([<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>],'yyyy-MM-dd') >= @FSDate
|
|||
|
AND format([<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>],'yyyy-MM-dd') <= @FEDate
|
|||
|
GROUP BY [SBU]
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD><EFBFBD>뱾<EFBFBD><EFBFBD><EFBFBD>ȵ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
INSERT INTO YSQKGK_SBU_GZTH([SBU],[<EFBFBD><EFBFBD><EFBFBD>굽<EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>])
|
|||
|
SELECT [SBU],[<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>] FROM #BNTEMP1 WHERE [<5B><><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>] <> 0
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȵ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>=Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>
|
|||
|
SELECT [SBU],SUM([<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>]) AS '<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>' INTO #BNZZTEMP1
|
|||
|
FROM ZRP_YingShouMingXi_yuyubo
|
|||
|
WHERE
|
|||
|
[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>] >= @FSDate
|
|||
|
AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>] <= @FEDate
|
|||
|
AND [<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>] = 'Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>'
|
|||
|
GROUP BY [SBU]
|
|||
|
|
|||
|
INSERT INTO YSQKGK_SBU_GZTH([SBU],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>])
|
|||
|
SELECT [SBU],[<EFBFBD><EFBFBD><EFBFBD>ڽ<EFBFBD><EFBFBD><EFBFBD>] FROM #BNZZTEMP1 WHERE [<5B><><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD>] <> 0
|
|||
|
|
|||
|
SELECT *
|
|||
|
INTO #TEMP1
|
|||
|
FROM(
|
|||
|
SELECT [SBU],
|
|||
|
SUM([<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>]) AS <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>,
|
|||
|
SUM([<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>]) AS <EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>,
|
|||
|
SUM([<EFBFBD><EFBFBD><EFBFBD>굽<EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>]) AS <EFBFBD><EFBFBD><EFBFBD>굽<EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>,
|
|||
|
SUM([<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>]) AS <EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>
|
|||
|
FROM YSQKGK_SBU_GZTH
|
|||
|
GROUP BY [SBU]
|
|||
|
)AS YS
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD><EFBFBD>ձ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
TRUNCATE TABLE YSQKGK_SBU_GZTH
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD><EFBFBD>²<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
INSERT INTO YSQKGK_SBU_GZTH([SBU],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>],
|
|||
|
[<EFBFBD><EFBFBD><EFBFBD>굽<EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>])
|
|||
|
SELECT * FROM #TEMP1
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
SELECT @SumDQJE = SUM([<EFBFBD><EFBFBD><EFBFBD>굽<EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>]) FROM YSQKGK_SBU_GZTH
|
|||
|
|
|||
|
UPDATE YSQKGK_SBU_GZTH
|
|||
|
SET [ռ<EFBFBD><EFBFBD>] = CONVERT(VARCHAR, CAST(([<EFBFBD><EFBFBD><EFBFBD>굽<EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>] / @SumDQJE) * 100 AS DECIMAL(10, 2))) + '%'
|
|||
|
|
|||
|
--<EFBFBD><EFBFBD><EFBFBD>±仯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
UPDATE YSQKGK_SBU_GZTH
|
|||
|
SET [<EFBFBD>仯] = ISNULL([<EFBFBD><EFBFBD><EFBFBD>굽<EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>],0) - ISNULL([<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>],0)
|
|||
|
|
|||
|
DROP TABLE #NCTEMP1,#NCZZTEMP1,#BNTEMP1,#BNZZTEMP1,#TEMP1
|
|||
|
END;
|