# Update: 2026/06/25 15:33:00 SET GLOBAL wait_timeout = 86400; SET GLOBAL innodb_buffer_pool_size = 1073741824; DROP TABLE IF EXISTS `4G`; DROP TABLE IF EXISTS `5G`; DROP TABLE IF EXISTS `4G_Date`; DROP TABLE IF EXISTS `4G_MAX`; DROP TABLE IF EXISTS `CCE_MAX`; DROP TABLE IF EXISTS `ULPRB_MAX`; DROP TABLE IF EXISTS `DLPRB_MAX`; DROP TABLE IF EXISTS `4G_MAX_IDX`; DROP TABLE IF EXISTS `CCE_MAX_IDX`; DROP TABLE IF EXISTS `ULPRB_MAX_IDX`; DROP TABLE IF EXISTS `DLPRB_MAX_IDX`; DROP TABLE IF EXISTS `日流量`; DROP TABLE IF EXISTS `4G日均流量`; DROP TABLE IF EXISTS `4G_结果表`; DROP TABLE IF EXISTS `5G_Date`; 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), `ERAB流量` = IFNULL(`ERAB流量`,0), `上行流量_GB` = IFNULL(`上行流量_GB`,0), `下行流量_GB` = IFNULL(`下行流量_GB`,0), `用户面平均激活UE数` = IFNULL(`用户面平均激活UE数`,0), `RRC连接建立最大用户数` = IFNULL(`RRC连接建立最大用户数`,0), `上行PUSCH利用率` = IFNULL(`上行PUSCH利用率`,0), `下行PDSCH利用率` = IFNULL(`下行PDSCH利用率`,0), `PDCCH资源利用率` = IFNULL(`PDCCH资源利用率`,0), `用户面最大激活UE数` = IFNULL(`用户面最大激活UE数`,0); UPDATE `5G_UD` SET `5G上下行总流量_GB` = IFNULL(`5G上下行总流量_GB`,0), `5G上行流量_GB` = IFNULL(`5G上行流量_GB`,0), `5G下行流量_GB` = IFNULL(`5G下行流量_GB`,0), `小区平均激活UE数` = IFNULL(`小区平均激活UE数`,0), `RRC连接最大连接用户数` = IFNULL(`RRC连接最大连接用户数`,0), `RRC连接平均连接用户数` = IFNULL(`RRC连接平均连接用户数`,0), `小区最大激活UE数` = IFNULL(`小区最大激活UE数`,0), `上行PRB平均利用率` = IFNULL(`上行PRB平均利用率`,0), `下行PRB平均利用率` = IFNULL(`下行PRB平均利用率`,0), `小区下行RLC_SDU字节数_MByte` = IFNULL(`小区下行RLC_SDU字节数_MByte`,0), `小区上行RLC_SDU字节数_MByte` = IFNULL(`小区上行RLC_SDU字节数_MByte`,0), `PDCCH信道动态CCE占用率` = IFNULL(`PDCCH信道动态CCE占用率`,0), `平均单Flow流量_MB` = IFNULL(`平均单Flow流量_MB`,0); CREATE TABLE `4G` AS SELECT * FROM `4G_UD`; CREATE TABLE `5G` AS SELECT * FROM `5G_UD`; ALTER TABLE `4G` ADD COLUMN `日期` date NULL FIRST, MODIFY COLUMN `日期时间` datetime, ADD COLUMN `CGI` varchar(100) NULL AFTER `日期时间`, MODIFY COLUMN `网元ID` int, MODIFY COLUMN `基站名称` varchar(200), MODIFY COLUMN `小区名称` varchar(200), MODIFY COLUMN `cellLocalId` int, MODIFY COLUMN `eNodeBId` int, MODIFY COLUMN `上下行总流量_GB` float, MODIFY COLUMN `ERAB流量` float, MODIFY COLUMN `上行流量_GB` float, MODIFY COLUMN `下行流量_GB` float, MODIFY COLUMN `用户面平均激活UE数` float, MODIFY COLUMN `RRC连接建立最大用户数` int, MODIFY COLUMN `上行PUSCH利用率` float, MODIFY COLUMN `下行PDSCH利用率` float, MODIFY COLUMN `PDCCH资源利用率` float, MODIFY COLUMN `用户面最大激活UE数` int; ALTER TABLE `5G` ADD COLUMN `日期` date NULL FIRST, MODIFY COLUMN `日期时间` datetime, ADD COLUMN `NCGI` varchar(100) NULL AFTER `日期时间`, MODIFY COLUMN `网元ID` int, MODIFY COLUMN `CU小区配置名称` varchar(200), MODIFY COLUMN `cellLocalId` int, MODIFY COLUMN `gNBId` int, MODIFY COLUMN `gNBplmn` varchar(200), MODIFY COLUMN `5G上下行总流量_GB` float, MODIFY COLUMN `5G上行流量_GB` float, MODIFY COLUMN `5G下行流量_GB` float, MODIFY COLUMN `小区平均激活UE数` float, MODIFY COLUMN `RRC连接最大连接用户数` int, MODIFY COLUMN `RRC连接平均连接用户数` float, MODIFY COLUMN `小区最大激活UE数` float, MODIFY COLUMN `上行PRB平均利用率` float, MODIFY COLUMN `下行PRB平均利用率` float, MODIFY COLUMN `小区下行RLC_SDU字节数_MByte` float, MODIFY COLUMN `小区上行RLC_SDU字节数_MByte` float, MODIFY COLUMN `PDCCH信道动态CCE占用率` float, MODIFY COLUMN `平均单Flow流量_MB` float; UPDATE `4G` SET `日期` = DATE_FORMAT(`日期时间`, '%Y-%m-%d'), `CGI` = CONCAT("460-00-",`eNodeBId`,"-",`cellLocalId`); UPDATE `5G` SET `gNBplmn` = "460-00" WHERE `gNBplmn` IS NULL; UPDATE `5G` SET `日期` = DATE_FORMAT(`日期时间`, '%Y-%m-%d'), `NCGI` = CONCAT(`gNBplmn`,"-",`gNBId`,"-",`cellLocalId`); ALTER TABLE `4G` ADD INDEX(`日期`), ADD INDEX(`日期时间`), ADD INDEX(`CGI`), ADD INDEX `TC`(`日期时间`, `CGI`), ADD INDEX `DC`(`日期`, `CGI`); ALTER TABLE `5G` ADD INDEX(`日期`), ADD INDEX(`日期时间`), ADD INDEX(`NCGI`), ADD INDEX `TC`(`日期时间`, `NCGI`), ADD INDEX `DC`(`日期`, `NCGI`); CREATE TEMPORARY TABLE IF NOT EXISTS `CCE_MAX_IDX`( SELECT `日期`, `CGI`, MAX(`PDCCH资源利用率`) AS `PDCCH资源利用率_忙时` FROM `4G` GROUP BY `日期`, `CGI` ); ALTER TABLE `CCE_MAX_IDX` ADD COLUMN `日期时间` datetime, ADD INDEX `DC`(`日期`, `CGI`, `PDCCH资源利用率_忙时`), ADD INDEX `TC`(`日期时间`, `CGI`); UPDATE `CCE_MAX_IDX` INNER JOIN `4G` ON `CCE_MAX_IDX`.`日期` = `4G`.`日期` AND `CCE_MAX_IDX`.`CGI` = `4G`.`CGI` AND `CCE_MAX_IDX`.`PDCCH资源利用率_忙时` = `4G`.`PDCCH资源利用率` SET `CCE_MAX_IDX`.`日期时间` = `4G`.`日期时间`; CREATE TEMPORARY TABLE IF NOT EXISTS `CCE_MAX` ( SELECT `4G`.* FROM `CCE_MAX_IDX` LEFT JOIN `4G` ON `CCE_MAX_IDX`.`CGI` = `4G`.`CGI` AND `CCE_MAX_IDX`.`日期时间` = `4G`.`日期时间` ); DROP TABLE IF EXISTS `CCE_MAX_IDX`; CREATE TEMPORARY TABLE IF NOT EXISTS `ULPRB_MAX_IDX`( SELECT `日期`, `CGI`, MAX(`上行PUSCH利用率`) AS `上行PUSCH利用率_忙时` FROM `4G` GROUP BY `日期`, `CGI` ); ALTER TABLE `ULPRB_MAX_IDX` ADD COLUMN `日期时间` datetime, ADD INDEX `DC`(`日期`, `CGI`, `上行PUSCH利用率_忙时`), ADD INDEX `TC`(`日期时间`, `CGI`); UPDATE `ULPRB_MAX_IDX` INNER JOIN `4G` ON `ULPRB_MAX_IDX`.`日期` = `4G`.`日期` AND `ULPRB_MAX_IDX`.`CGI` = `4G`.`CGI` AND `ULPRB_MAX_IDX`.`上行PUSCH利用率_忙时` = `4G`.`上行PUSCH利用率` SET `ULPRB_MAX_IDX`.`日期时间` = `4G`.`日期时间`; CREATE TABLE IF NOT EXISTS `ULPRB_MAX` ( SELECT `4G`.* FROM `ULPRB_MAX_IDX` LEFT JOIN `4G` ON `ULPRB_MAX_IDX`.`CGI` = `4G`.`CGI` AND `ULPRB_MAX_IDX`.`日期时间` = `4G`.`日期时间` ); DROP TABLE IF EXISTS `ULPRB_MAX_IDX`; CREATE TEMPORARY TABLE IF NOT EXISTS `DLPRB_MAX_IDX`( SELECT `日期`, `CGI`, MAX(`下行PDSCH利用率`) AS `下行PDSCH利用率_忙时` FROM `4G` GROUP BY `日期`, `CGI` ); ALTER TABLE `DLPRB_MAX_IDX` ADD COLUMN `日期时间` datetime, ADD INDEX `DC`(`日期`, `CGI`, `下行PDSCH利用率_忙时`), ADD INDEX `TC`(`日期时间`, `CGI`); UPDATE `DLPRB_MAX_IDX` INNER JOIN `4G` ON `DLPRB_MAX_IDX`.`日期` = `4G`.`日期` AND `DLPRB_MAX_IDX`.`CGI` = `4G`.`CGI` AND `DLPRB_MAX_IDX`.`下行PDSCH利用率_忙时` = `4G`.`下行PDSCH利用率` SET `DLPRB_MAX_IDX`.`日期时间` = `4G`.`日期时间`; CREATE TEMPORARY TABLE IF NOT EXISTS `DLPRB_MAX` ( SELECT `4G`.* FROM `DLPRB_MAX_IDX` LEFT JOIN `4G` ON `DLPRB_MAX_IDX`.`CGI` = `4G`.`CGI` AND `DLPRB_MAX_IDX`.`日期时间` = `4G`.`日期时间` ); DROP TABLE IF EXISTS `DLPRB_MAX_IDX`; ALTER TABLE `CCE_MAX` ADD INDEX `DC`(`日期`, `CGI`); ALTER TABLE `DLPRB_MAX` ADD INDEX `DC`(`日期`, `CGI`); ALTER TABLE `ULPRB_MAX` ADD INDEX `DC`(`日期`, `CGI`); CREATE TEMPORARY TABLE IF NOT EXISTS `4G_Date` (SELECT `日期`, `CGI` FROM `4G` GROUP BY `日期`, `CGI`); ALTER TABLE `4G_Date` ADD INDEX `DC`(`日期`, `CGI`); CREATE TEMPORARY TABLE IF NOT EXISTS `4G_MAX_IDX` ( SELECT `4G_Date`.`日期`, `4G_Date`.`CGI`, GREATEST(`ULPRB_MAX`.`上行PUSCH利用率`, `DLPRB_MAX`.`下行PDSCH利用率`, `CCE_MAX`.`PDCCH资源利用率`) AS `最大值` FROM `4G_Date` INNER JOIN `DLPRB_MAX` ON `4G_Date`.`日期` = `DLPRB_MAX`.`日期` AND `4G_Date`.`CGI` = `DLPRB_MAX`.`CGI` INNER JOIN `CCE_MAX` ON `4G_Date`.`日期` = `CCE_MAX`.`日期` AND `4G_Date`.`CGI` = `CCE_MAX`.`CGI` INNER JOIN `ULPRB_MAX` ON `4G_Date`.`日期` = `ULPRB_MAX`.`日期` AND `4G_Date`.`CGI` = `ULPRB_MAX`.`CGI` ); DROP TABLE IF EXISTS `4G_Date`; ALTER TABLE `4G_MAX_IDX` ADD INDEX `DC`(`日期`, `CGI`), ADD INDEX (`最大值`); CREATE TABLE IF NOT EXISTS `4G_MAX` ( SELECT * FROM `4G` LIMIT 0 ); ALTER TABLE `4G_MAX` ADD INDEX (`日期`), ADD INDEX (`CGI`), ADD INDEX `DC` (`日期`, `CGI`), ADD INDEX `idx`(`CGI`, `基站名称`, `小区名称`); TRUNCATE `4G_MAX`; INSERT INTO `4G_MAX` SELECT `ULPRB_MAX`.* FROM `ULPRB_MAX` INNER JOIN `4G_MAX_IDX` ON `ULPRB_MAX`.`日期` = `4G_MAX_IDX`.`日期` AND `ULPRB_MAX`.`CGI` = `4G_MAX_IDX`.`CGI` AND `ULPRB_MAX`.`上行PUSCH利用率` = `4G_MAX_IDX`.`最大值`; DELETE FROM `DLPRB_MAX` WHERE `日期` IS NULL; INSERT INTO `4G_MAX` SELECT `DLPRB_MAX`.* FROM `DLPRB_MAX` INNER JOIN `4G_MAX_IDX` ON `DLPRB_MAX`.`日期` = `4G_MAX_IDX`.`日期` AND `DLPRB_MAX`.`CGI` = `4G_MAX_IDX`.`CGI` AND `DLPRB_MAX`.`下行PDSCH利用率` = `4G_MAX_IDX`.`最大值` WHERE NOT EXISTS ( SELECT 1 FROM `4G_MAX` WHERE `4G_MAX`.`日期` = `DLPRB_MAX`.`日期` AND `4G_MAX`.`CGI` = `DLPRB_MAX`.`CGI` ); DELETE FROM `CCE_MAX` WHERE `日期` IS NULL; INSERT INTO `4G_MAX` SELECT `CCE_MAX`.* FROM `CCE_MAX` INNER JOIN `4G_MAX_IDX` ON `CCE_MAX`.`日期` = `4G_MAX_IDX`.`日期` AND `CCE_MAX`.`CGI` = `4G_MAX_IDX`.`CGI` AND `CCE_MAX`.`PDCCH资源利用率` = `4G_MAX_IDX`.`最大值` WHERE NOT EXISTS ( SELECT 1 FROM `4G_MAX` WHERE `4G_MAX`.`日期` = `CCE_MAX`.`日期` AND `4G_MAX`.`CGI` = `CCE_MAX`.`CGI` ); DROP TABLE IF EXISTS `CCE_MAX`; DROP TABLE IF EXISTS `ULPRB_MAX`; DROP TABLE IF EXISTS `DLPRB_MAX`; DROP TABLE IF EXISTS `4G_MAX_IDX`; CREATE TEMPORARY TABLE IF NOT EXISTS `日流量`(SELECT `日期`, `CGI`, SUM(`上下行总流量_GB`) AS `日流量` FROM `4G` GROUP BY `日期`, `CGI`); ALTER TABLE `日流量` ADD INDEX (`CGI`); DROP TABLE IF EXISTS `4G日均流量`; CREATE TEMPORARY TABLE IF NOT EXISTS `4G日均流量` ( SELECT `CGI`, AVG(`日流量`) AS `日均流量`, COUNT(`日期`) AS `流量有效天数` FROM `日流量` WHERE `日流量` > 0 GROUP BY `CGI` ); CREATE TABLE IF NOT EXISTS `4G_结果表` ( SELECT `CGI`, `基站名称`, `小区名称`, ROUND(AVG(`上下行总流量_GB`),6) AS `自忙时流量(GB)`, ROUND(AVG(`ERAB流量`),6) AS `ERAB流量`, ROUND(AVG(`上行流量_GB`),6) AS `上行流量(GB)`, ROUND(AVG(`下行流量_GB`),6) AS `下行流量(GB)`, ROUND(AVG(`用户面平均激活UE数`),6) AS `用户面平均激活UE数`, ROUND(AVG(`RRC连接建立最大用户数`),6) AS `YY-RRC连接建立最大用户数`, ROUND(AVG(`上行PUSCH利用率`),6) AS `上行PUSCH利用率`, ROUND(AVG(`下行PDSCH利用率`),6) AS `下行PDSCH利用率`, ROUND(AVG(`PDCCH资源利用率`),6) AS `PDCCH资源利用率`, ROUND(AVG(`用户面最大激活UE数`),6) AS `用户面最大激活UE数` FROM `4G_MAX` GROUP BY `CGI`, `基站名称`, `小区名称` ); DROP TABLE IF EXISTS `4G_MAX`; ALTER TABLE `4G_结果表` ADD COLUMN `日均流量(GB)` DOUBLE AFTER `小区名称`, ADD INDEX (`CGI`); ALTER TABLE `4G日均流量` ADD INDEX (`CGI`); UPDATE `4G_结果表` INNER JOIN `4G日均流量` ON `4G_结果表`.`CGI` = `4G日均流量`.`CGI` SET `4G_结果表`.`日均流量(GB)` = ROUND(`4G日均流量`.`日均流量`,6); DROP TABLE IF EXISTS `日流量`; DROP TABLE IF EXISTS `4G日均流量`; DROP TABLE IF EXISTS `4G`; # 5G脚本 CREATE TEMPORARY TABLE IF NOT EXISTS `ULPRB_MAX_IDX`( SELECT `日期`, `NCGI`, MAX(`上行PRB平均利用率`) AS `上行PRB平均利用率_忙时` FROM `5G` GROUP BY `日期`, `NCGI` ); ALTER TABLE `ULPRB_MAX_IDX` ADD COLUMN `日期时间` datetime, ADD INDEX `DC`(`日期`, `NCGI`, `上行PRB平均利用率_忙时`), ADD INDEX `TC`(`日期时间`, `NCGI`); UPDATE `ULPRB_MAX_IDX` INNER JOIN `5G` ON `ULPRB_MAX_IDX`.`日期` = `5G`.`日期` AND `ULPRB_MAX_IDX`.`NCGI` = `5G`.`NCGI` AND `ULPRB_MAX_IDX`.`上行PRB平均利用率_忙时` = `5G`.`上行PRB平均利用率` SET `ULPRB_MAX_IDX`.`日期时间` = `5G`.`日期时间`; CREATE TEMPORARY TABLE IF NOT EXISTS `ULPRB_MAX` ( SELECT `5G`.* FROM `ULPRB_MAX_IDX` LEFT JOIN `5G` ON `ULPRB_MAX_IDX`.`NCGI` = `5G`.`NCGI` AND `ULPRB_MAX_IDX`.`日期时间` = `5G`.`日期时间` ); CREATE TEMPORARY TABLE IF NOT EXISTS `DLPRB_MAX_IDX`( SELECT `日期`, `NCGI`, MAX(`下行PRB平均利用率`) AS `下行PRB平均利用率_忙时` FROM `5G` GROUP BY `日期`, `NCGI` ); ALTER TABLE `DLPRB_MAX_IDX` ADD COLUMN `日期时间` datetime, ADD INDEX `DC`(`日期`, `NCGI`, `下行PRB平均利用率_忙时`), ADD INDEX `TC`(`日期时间`, `NCGI`); UPDATE `DLPRB_MAX_IDX` INNER JOIN `5G` ON `DLPRB_MAX_IDX`.`日期` = `5G`.`日期` AND `DLPRB_MAX_IDX`.`NCGI` = `5G`.`NCGI` AND `DLPRB_MAX_IDX`.`下行PRB平均利用率_忙时` = `5G`.`下行PRB平均利用率` SET `DLPRB_MAX_IDX`.`日期时间` = `5G`.`日期时间`; CREATE TEMPORARY TABLE IF NOT EXISTS `DLPRB_MAX` ( SELECT `5G`.* FROM `DLPRB_MAX_IDX` LEFT JOIN `5G` ON `DLPRB_MAX_IDX`.`NCGI` = `5G`.`NCGI` AND `DLPRB_MAX_IDX`.`日期时间` = `5G`.`日期时间` ); DROP TABLE IF EXISTS `DLPRB_MAX_IDX`; ALTER TABLE `DLPRB_MAX` ADD INDEX `DC`(`日期`, `NCGI`); ALTER TABLE `ULPRB_MAX` ADD INDEX `DC`(`日期`, `NCGI`); DROP TABLE IF EXISTS `5G_Date`; CREATE TEMPORARY TABLE IF NOT EXISTS `5G_Date` ( SELECT `日期`, `NCGI` FROM `5G` GROUP BY `日期`, `NCGI` ); ALTER TABLE `5G_Date` ADD INDEX `DC`(`日期`, `NCGI`); CREATE TEMPORARY TABLE IF NOT EXISTS `5G_MAX_IDX` ( SELECT `5G_Date`.`日期`, `5G_Date`.`NCGI`, GREATEST(`ULPRB_MAX`.`上行PRB平均利用率`, `DLPRB_MAX`.`下行PRB平均利用率`) AS `最大值` FROM `5G_Date` INNER JOIN `DLPRB_MAX` ON `5G_Date`.`日期` = `DLPRB_MAX`.`日期` AND `5G_Date`.`NCGI` = `DLPRB_MAX`.`NCGI` INNER JOIN `ULPRB_MAX` ON `5G_Date`.`日期` = `ULPRB_MAX`.`日期` AND `5G_Date`.`NCGI` = `ULPRB_MAX`.`NCGI` ); DROP TABLE IF EXISTS `5G_Date`; ALTER TABLE `5G_MAX_IDX` ADD INDEX `DC`(`日期`, `NCGI`), ADD INDEX (`最大值`); CREATE TABLE IF NOT EXISTS `5G_MAX` ( SELECT * FROM `5G` LIMIT 0 ); ALTER TABLE `5G_MAX` ADD INDEX (`日期`), ADD INDEX (`NCGI`), ADD INDEX `DC` (`日期`, `NCGI`), ADD INDEX `idx`(`NCGI`, `CU小区配置名称`); TRUNCATE `5G_MAX`; INSERT INTO `5G_MAX` SELECT `ULPRB_MAX`.* FROM `ULPRB_MAX` INNER JOIN `5G_MAX_IDX` ON `ULPRB_MAX`.`日期` = `5G_MAX_IDX`.`日期` AND `ULPRB_MAX`.`NCGI` = `5G_MAX_IDX`.`NCGI` AND `ULPRB_MAX`.`上行PRB平均利用率` = `5G_MAX_IDX`.`最大值`; DELETE FROM `DLPRB_MAX` WHERE `日期` IS NULL; INSERT INTO `5G_MAX` SELECT `DLPRB_MAX`.* FROM `DLPRB_MAX` INNER JOIN `5G_MAX_IDX` ON `DLPRB_MAX`.`日期` = `5G_MAX_IDX`.`日期` AND `DLPRB_MAX`.`NCGI` = `5G_MAX_IDX`.`NCGI` AND `DLPRB_MAX`.`下行PRB平均利用率` = `5G_MAX_IDX`.`最大值` WHERE NOT EXISTS ( SELECT 1 FROM `5G_MAX` WHERE `5G_MAX`.`日期` = `DLPRB_MAX`.`日期` AND `5G_MAX`.`NCGI` = `DLPRB_MAX`.`NCGI` ); DROP TABLE IF EXISTS `ULPRB_MAX`; DROP TABLE IF EXISTS `DLPRB_MAX`; DROP TABLE IF EXISTS `5G_MAX_IDX`; CREATE TEMPORARY TABLE IF NOT EXISTS `日流量`(SELECT `日期`, `NCGI`, SUM(`5G上下行总流量_GB`) AS `日流量` FROM `5G` GROUP BY `日期`, `NCGI`); ALTER TABLE `日流量` ADD INDEX (`NCGI`); CREATE TEMPORARY TABLE IF NOT EXISTS `5G日均流量` ( SELECT `NCGI`, AVG(`日流量`) AS `日均流量`, COUNT(`日期`) AS `流量有效天数` FROM `日流量` WHERE `日流量` > 0 GROUP BY `NCGI` ); CREATE TABLE IF NOT EXISTS `5G_结果表` ( SELECT `NCGI`, `CU小区配置名称`, ROUND(AVG(`5G上下行总流量_GB`),6) AS `5G上下行总流量(上行PDCP PDU数据量+下行PDCP成功发送数据量)(GB)`, ROUND(AVG(`5G上行流量_GB`),6) AS `5G上行流量(上行PDCP PDU数据量)(GB)`, ROUND(AVG(`5G下行流量_GB`),6) AS `5G下行流量(下行PDCP成功发送数据量)(GB)`, ROUND(AVG(`小区平均激活UE数`),6) AS `小区平均激活UE数`, ROUND(AVG(`RRC连接最大连接用户数`),6) AS `RRC连接最大连接用户数`, ROUND(AVG(`RRC连接平均连接用户数`),6) AS `RRC连接平均连接用户数`, ROUND(AVG(`小区最大激活UE数`),6) AS `小区最大激活UE数`, ROUND(AVG(`上行PRB平均利用率`),6) AS `上行PRB平均利用率`, ROUND(AVG(`下行PRB平均利用率`),6) AS `下行PRB平均利用率`, ROUND(AVG(`PDCCH信道动态CCE占用率`),6) AS `PDCCH信道CCE占用率(动态)(%)`, ROUND(AVG(`小区下行RLC_SDU字节数_MByte`),6) AS `小区下行RLC SDU字节数(MByte)`, ROUND(AVG(`小区上行RLC_SDU字节数_MByte`),6) AS `小区上行RLC SDU字节数(MByte)`, ROUND(AVG(`平均单Flow流量_MB`),6) AS `单Flow流量(MB)` FROM `5G_MAX` GROUP BY `NCGI`, `CU小区配置名称` ); ALTER TABLE `5G_结果表` ADD COLUMN `日均流量(GB)` DOUBLE AFTER `CU小区配置名称`, ADD INDEX (`NCGI`); ALTER TABLE `5G日均流量` ADD INDEX (`NCGI`); UPDATE `5G_结果表` INNER JOIN `5G日均流量` ON `5G_结果表`.`NCGI` = `5G日均流量`.`NCGI` SET `5G_结果表`.`日均流量(GB)` = ROUND(`5G日均流量`.`日均流量`,6); DROP TABLE IF EXISTS `日流量`; DROP TABLE IF EXISTS `5G日均流量`; DROP TABLE IF EXISTS `4G`; DROP TABLE IF EXISTS `5G`; DROP TABLE IF EXISTS `5G_MAX`; UPDATE `4G_结果表` SET `日均流量(GB)` = IFNULL(`日均流量(GB)`, 0), `自忙时流量(GB)` = IFNULL(`自忙时流量(GB)`, 0), `ERAB流量` = IFNULL(`ERAB流量`, 0), `上行流量(GB)` = IFNULL(`上行流量(GB)`, 0), `下行流量(GB)` = IFNULL(`下行流量(GB)`, 0), `用户面平均激活UE数` = IFNULL(`用户面平均激活UE数`, 0), `YY-RRC连接建立最大用户数` = IFNULL(`YY-RRC连接建立最大用户数`, 0), `上行PUSCH利用率` = IFNULL(`上行PUSCH利用率`, 0), `下行PDSCH利用率` = IFNULL(`下行PDSCH利用率`, 0), `PDCCH资源利用率` = IFNULL(`PDCCH资源利用率`, 0), `用户面最大激活UE数` = IFNULL(`用户面最大激活UE数`, 0); UPDATE `5G_结果表` SET `日均流量(GB)` = IFNULL(`日均流量(GB)`,0), `5G上下行总流量(上行PDCP PDU数据量+下行PDCP成功发送数据量)(GB)` = IFNULL(`5G上下行总流量(上行PDCP PDU数据量+下行PDCP成功发送数据量)(GB)`,0), `5G上行流量(上行PDCP PDU数据量)(GB)` = IFNULL(`5G上行流量(上行PDCP PDU数据量)(GB)`,0), `5G下行流量(下行PDCP成功发送数据量)(GB)` = IFNULL(`5G下行流量(下行PDCP成功发送数据量)(GB)`,0), `小区平均激活UE数` = IFNULL(`小区平均激活UE数`,0), `RRC连接最大连接用户数` = IFNULL(`RRC连接最大连接用户数`,0), `RRC连接平均连接用户数` = IFNULL(`RRC连接平均连接用户数`,0), `小区最大激活UE数` = IFNULL(`小区最大激活UE数`,0), `上行PRB平均利用率` = IFNULL(`上行PRB平均利用率`,0), `下行PRB平均利用率` = IFNULL(`下行PRB平均利用率`,0), `PDCCH信道CCE占用率(动态)(%)` = IFNULL(`PDCCH信道CCE占用率(动态)(%)`,0), `小区下行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`;