feat: 添加日间流量数据处理逻辑,创建新表并更新 5G 结果表

This commit is contained in:
2026-06-25 16:33:15 +08:00
parent a43a79448c
commit df017e4c68
+74
View File
@@ -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`;