如何利用MySQL CTAS进行数据清洗

avatar
作者
筋斗云
阅读量:0

MySQL中的CTAS(Create Table As Select)是一种创建新表并将查询结果插入到新表中的方法

  1. 确保你有一个包含原始数据的表。例如,我们有一个名为raw_data的表,其中包含以下列:idnameagecity

  2. 使用CREATE TABLE语句创建一个新表,该表将存储清洗后的数据。例如,我们可以创建一个名为clean_data的表,其中只包含nameagecity列。

CREATE TABLE clean_data (     id INT AUTO_INCREMENT PRIMARY KEY,     name VARCHAR(255) NOT NULL,     age INT NOT NULL,     city VARCHAR(255) NOT NULL ); 
  1. 使用INSERT INTO ... SELECT语句从原始表中选择所需的列,并根据需要对数据进行清洗。例如,我们可以删除重复的行、过滤年龄小于18岁的记录、将空城市值替换为"未知"。
INSERT INTO clean_data (name, age, city) SELECT DISTINCT name, age, IFNULL(city, '未知') FROM raw_data WHERE age >= 18; 
  1. 现在,clean_data表已经包含了清洗后的数据。你可以继续对这些数据进行进一步的分析和处理。

注意:在实际操作中,请根据你的数据和需求进行相应的调整。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!