From df017e4c684d9df4d336465b8e1d974fd6071fb2 Mon Sep 17 00:00:00 2001 From: Nixevol Date: Thu, 25 Jun 2026 16:33:15 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E6=97=A5=E9=97=B4?= =?UTF-8?q?=E6=B5=81=E9=87=8F=E6=95=B0=E6=8D=AE=E5=A4=84=E7=90=86=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=8C=E5=88=9B=E5=BB=BA=E6=96=B0=E8=A1=A8=E5=B9=B6?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=205G=20=E7=BB=93=E6=9E=9C=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ReportScript.sql | 74 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/ReportScript.sql b/ReportScript.sql index 62239dd..459645d 100644 --- a/ReportScript.sql +++ b/ReportScript.sql @@ -22,6 +22,9 @@ DROP TABLE IF EXISTS `5G_MAX`; DROP TABLE IF EXISTS `5G_MAX_IDX`; DROP TABLE IF EXISTS `5G日均流量`; DROP TABLE IF EXISTS `5G_结果表`; +DROP TABLE IF EXISTS `_rj_yd`; +DROP TABLE IF EXISTS `_rj_gd`; +DROP TABLE IF EXISTS `rj`; UPDATE `4G_UD` SET `上下行总流量_GB` = IFNULL(`上下行总流量_GB`,0), @@ -506,3 +509,74 @@ UPDATE `5G_结果表` SET `小区下行RLC SDU字节数(MByte)` = IFNULL(`小区下行RLC SDU字节数(MByte)`,0), `小区上行RLC SDU字节数(MByte)` = IFNULL(`小区上行RLC SDU字节数(MByte)`,0), `单Flow流量(MB)` = IFNULL(`单Flow流量(MB)`,0); + + +# 处理日间(广电、移动)流量数据 + +ALTER TABLE `5G_结果表` +ADD COLUMN `_gNBId` varchar(50), +ADD COLUMN `_cellId` varchar(50), +ADD COLUMN `移动流量_GB` double NOT NULL DEFAULT 0 AFTER `CU小区配置名称`, +ADD COLUMN `广电流量_GB` double NOT NULL DEFAULT 0 AFTER `移动流量_GB`; + +UPDATE `5G_结果表` SET + `_gNBId` = SUBSTRING_INDEX(SUBSTRING_INDEX(`NCGI`, '-', 3), '-', -1), + `_cellId` = SUBSTRING_INDEX(`NCGI`, '-', -1); + +ALTER TABLE `5G_结果表` ADD INDEX `_rj`(`_gNBId`, `_cellId`); + + +CREATE TABLE `_rj_yd` ( `gNBId` varchar(50), `cellId` varchar(50), `上下行总流量_GB` double, INDEX (`gNBId`, `cellId`)) AS + SELECT `gNBId`, `cellId`, AVG(`上下行总流量_GB`) AS `上下行总流量_GB` FROM ( + SELECT `gNBId`, `cellId`, `上下行总流量_GB` FROM `2_6grjyd` + UNION ALL + SELECT `gNBId`, `cellId`, `上下行总流量_GB` FROM `700mrjyd` + ) AS t + GROUP BY `gNBId`, `cellId`; + +CREATE TABLE `_rj_gd` ( + `gNBId` varchar(50), `cellId` varchar(50), `上下行总流量_GB` double, + INDEX (`gNBId`, `cellId`) +) AS +SELECT `gNBId`, `cellId`, AVG(`上下行总流量_GB`) AS `上下行总流量_GB` +FROM ( + SELECT `gNBId`, `cellId`, `上下行总流量_GB` FROM `2_6grjgd` + UNION ALL + SELECT `gNBId`, `cellId`, `上下行总流量_GB` FROM `700mrjgd` +) AS t +GROUP BY `gNBId`, `cellId`; + +CREATE TABLE `rj` ( + `gNBId` varchar(50), `cellId` varchar(50), + `移动流量_GB` double NOT NULL DEFAULT 0, + `广电流量_GB` double NOT NULL DEFAULT 0, + INDEX (`gNBId`, `cellId`) +) AS +SELECT + `_rj_yd`.`gNBId`, `_rj_yd`.`cellId`, + IFNULL(`_rj_yd`.`上下行总流量_GB`, 0) AS `移动流量_GB`, + IFNULL(`_rj_gd`.`上下行总流量_GB`, 0) AS `广电流量_GB` +FROM `_rj_yd` +LEFT JOIN `_rj_gd` ON `_rj_yd`.`gNBId` = `_rj_gd`.`gNBId` AND `_rj_yd`.`cellId` = `_rj_gd`.`cellId` +UNION ALL +SELECT + `_rj_gd`.`gNBId`, `_rj_gd`.`cellId`, + 0, `_rj_gd`.`上下行总流量_GB` +FROM `_rj_gd` +LEFT JOIN `_rj_yd` ON `_rj_gd`.`gNBId` = `_rj_yd`.`gNBId` AND `_rj_gd`.`cellId` = `_rj_yd`.`cellId` +WHERE `_rj_yd`.`gNBId` IS NULL; + +UPDATE `5G_结果表` +LEFT JOIN `rj` + ON `5G_结果表`.`_gNBId` = `rj`.`gNBId` + AND `5G_结果表`.`_cellId` = `rj`.`cellId` +SET + `5G_结果表`.`移动流量_GB` = IFNULL(`rj`.`移动流量_GB`, 0), + `5G_结果表`.`广电流量_GB` = IFNULL(`rj`.`广电流量_GB`, 0); + +ALTER TABLE `5G_结果表` DROP INDEX `_rj`, DROP COLUMN `_gNBId`, DROP COLUMN `_cellId`; + +DROP TABLE `_rj_yd`; +DROP TABLE `_rj_gd`; +DROP TABLE `rj`; +