《PostgreSQL服务器编程》一一1.6 数据清洗

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
简介:

本节书摘来自华章计算机《PostgreSQL服务器编程》一书中的第1章,第1.6节,作者:(美)Hannu Krosing, Jim Mlodgenski, Kirk Roybal 著
,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.6 数据清洗

我们注意到雇员的姓名经常会出现不一致的大小写。如果通过添加约束,大小写的一致性就很容易得以加强:
image

然而,更好的办法是只要确保名字被另存为大写字母就可以了。而完成这样的操作,最简单的办法就是通过触发器:
image

现在,针对新雇员的下一个set_salary()?函数调用,将会使用大写字母的形式插入emp_name:
image

由于大写的转换发生在触发器内部,因此函数返回仍然显示为小写的名字,但是在数据库中它却是大写的:image

在修复了现存的混合大小写的emp_names之后,我们可以通过添加约束的形式,确保以后所有的emp_names都会显示为大写。
image

如果这个行为需要用于更多的地方,一个合理的做法就是定义一个新类型u_text,而这个类型一直作另存为大写形式。针对这个方法,我们将在8.6.1节中做更深入的阐述。

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
10月前
|
SQL 存储 运维
MySQL基础篇——MySQL数据库客户端连接,数据模型,SQL知识
MySQL基础篇——MySQL数据库客户端连接,数据模型,SQL知识
122 0