同一个mysql表中,A字段和B字段,进行相除,再更新到C字段中

同一个mysql表中,A字段和B字段,进行相除,再更新到C字段中

如下标 channel_pull_up_rate = uv / ip_num * 100

CREATE TABLE `report_collect` (
  `id` int NOT NULL AUTO_INCREMENT,
  `ip_num` bigint DEFAULT '0' COMMENT 'IP数',
  `uv` bigint DEFAULT '0' COMMENT 'uv',
  `channel_pull_up_rate` decimal(10,2) DEFAULT '0.00' COMMENT '拉起率 % = uv/IP数 * 100',

  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='收集';

解决方法:

UPDATE report_collect p2
JOIN report_collect p1 ON p2.id = p1.id 
SET p2.channel_pull_up_rate = (p1.uv / p1.ip_num) * 100 
 where p1.ip_num > 0;

业余时间捣鼓了一个小程序,欢迎访问和点评!
同一个mysql表中,A字段和B字段,进行相除,再更新到C字段中_第1张图片

你可能感兴趣的:(mysql,mysql,数据库)