SQL:数据清洗

本文介绍了如何使用SQL进行数据清洗,包括检查数据完整性,处理缺失值,检查数据全面性和合法性。在检查完整性时,通过SQL查询统计空值个数,并使用存储过程动态检查所有字段。对于缺失值,提供了删除、均值和高频值填充的方法。在全面性检查中,调整了字段类型以符合数据特性。最后,通过设置主键确保数据的唯一性,验证了数据无重复。
摘要由CSDN通过智能技术生成

检查数据完整性

在完整性这里,我们需要重点检查字段数值是否存在空值,在此之前,我们需要先统计每个字段空值的个数。在 SQL 中,我们可以分别统计每个字段的空值个数,比如针对 Age 字段进行空值个数的统计,使用下面的命令即可:


SELECT COUNT(*) as num FROM titanic_train WHERE Age IS NULL

当然我们也可以同时对多个字段的非空值进行统计:


SELECT 
SUM((CASE WHEN Age IS NULL THEN 1 ELSE 0 END)) AS age_null_num, 
SUM((CASE WHEN Cabin IS NULL THEN 1 ELSE 0 END)) AS cabin_null_num
FROM titanic_train

不过这种方式适用于字段个数较少的情况,如果一个数据表存在几十个,甚至更多的字段,那么采用这种方式既麻烦又容易出错。这时我们可以采用存储过程的方式,用程序来进行字段的空值检查,代码如下:


CREATE PROCEDURE `check_column_null_num`(IN schema_name VARCHAR(100
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值