sql - 复合唯一索引中的一列中的空值
问题描述
我在 (id, name) 列上有一个唯一索引。我有一个要添加到索引中的日期列,因为我希望唯一性基于 (id, name, date) 列。日期列包含很多空值。它将如何影响指数?
解决方案
如果您使用的是 SQL Server,那么在 SQL Server 中空值不包含在索引结构中,但是 SQL Server 有一些新功能,其中之一是filtering index
. 如果一个字段有很多空值,那么建议使用字段为空的条件创建一个额外的过滤索引。
最终结果:您可以轻松地进行添加索引操作,没有问题,在许多数据库中,空值不会影响性能。
推荐阅读
- excel - 在循环中多次显示用户表单
- html - 限制元素(子)溢出它的容器(父)宽度
- regex - 如何制作正则表达式
- node.js - 用 Jest 模拟 TypeDI 服务
- javascript - Firebase 云功能:如何使用通配符获取对文档的引用?
- javascript - Vue 导航与 Vue 路由器:用户选择时的动态导航项
- python - 如何完全清除命令行应用程序中的一行?
- apache-poi - 如何通过 POI 获取 powerpoint 文件中图表的类型?
- spring-boot - @RestControllerAdvice 不起作用。我使用的是 Spring boot 2.2.6 版本
- python - 如何使用python获取docker mounts的子目录