计算每列中空值的数量

2024-01-12

我遇到过一个数据库,其表太宽。 (600+ 列)即使在没有参数的情况下询问前 100 行也需要 4 秒。我想把这些桌子缩小一点。

为了弄清楚哪些列可以最容易地移动到新表或完全删除,我想知道每列中有多少个空值。这应该告诉我哪些信息可能最不重要。

我将如何编写一个查询来查找所有列并计算这些列中的空值?

Edit数据库是 SQL Server 2008。我是really希望不要单独键入每一列。看起来 sys.columns 可以帮助解决这个问题?

Edit2这些列都是不同类型的。


Try this

declare @Table_Name nvarchar(max), @Columns nvarchar(max), @stmt nvarchar(max)

declare table_cursor cursor local fast_forward for
    select
        s.name,
        stuff(
            (
                select
                    ', count(case when ' + name + 
                    ' is null then 1 else null end) as count_' + name
                from sys.columns as c
                where c.object_id = s.object_id
                for xml path(''), type
            ).value('data(.)', 'nvarchar(max)')
        , 1, 2, '')
    from sys.tables as s

open table_cursor
fetch table_cursor into @Table_Name, @Columns

while @@FETCH_STATUS = 0
begin
    select @stmt = 'select ''' + @Table_Name + ''' as Table_Name, ' + @Columns + ' from ' + @Table_Name

    exec sp_executesql
        @stmt = @stmt

    fetch table_cursor into @Table_Name, @Columns
end

close table_cursor
deallocate table_cursor
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

计算每列中空值的数量 的相关文章

随机推荐

  • 如何在 python opencv GUI 中打印一些功能?

    我想在 python openCV 中打印图像的平均值 高度和宽度 我使用了两个按钮 获取照片和分析图像 和不同的 GUI 一个用于获取照片 def openphoto 和另一个用于打印这些特征 def feature 但我收到错误 注意
  • 究竟什么是超长形式/编码?

    正在阅读关于 UTF 8 的维基百科文章 http en wikipedia org wiki UTF 8 我一直想知道这个词overlong 该术语多次使用 但本文没有提供其含义的定义或参考 我想知道是否有人可以解释该术语及其目的 它是一
  • 当变量更改时更新 tkinter 标签

    我正在尝试使用 python tkinter 模块构建一个应用程序 目前 我正在尝试让标签显示的文本在选择单选按钮时更改 我将标签文本设置为文本变量 以及根据选择的按钮将文本变量更改为所需文本的函数 但是 我预计标签文本会发生变化 因为它的
  • 为什么我们不喜欢用 Big-O 表示法指定常数因子?

    让我们考虑一下经典的大 O 表示法定义 证明链接 http www phil uu nl datastructuren 10 11 knuth big omicron pdf O f n 是存在正常数的所有函数的集合C and n0 wit
  • 如何以编程方式更改布局的可见性

    有一种方法可以更改 XML 中视图的可见性 但如何以编程方式更改 XML 中定义的布局的可见性 如何获取布局对象
  • Ansible 模板中出现额外空格

    我正在生成配置文件 我希望它们能够缩进 我从 Jinja2 模板开始 当从简单的 python 程序调用时 该模板可以正确呈现 当我从 ansible 调用它时 除了循环的第一行之外 我将在所有行上获得 2 个额外的空格 生成 YAML 和
  • UIReferenceLibraryViewController hasDictionaryDefinition 仅适用于 iPhone 5s 上的模拟器

    当我调用这段代码时 NSString word hello bool response UIReferenceLibraryViewController dictionaryHasDefinitionForTerm word 在 iPhon
  • 递归搜索对象

    我想递归搜索并替换数组中的元素 该数组是基于树的 所以看起来像 Object Children Object type A Object type B Object Children Object type A Object etc 我希望
  • 推送到新的远程分支时更新被拒绝错误

    我已经分叉了一个 github 存储库 现在我的分叉已经进行了几次提交 我现在想提供one这些提交作为原始存储库的 PR 下列的这个问题的答案 https stackoverflow com questions 21527233 creat
  • 设置请求优先级齐射

    我正在尝试使用 Android 中的 Volley 库设置请求的优先级 我不知道如何设置请求优先级 StringRequest request new StringRequest Request Method GET feed URL vo
  • 何时使用转换或转换

    我很想知道演员表和演员表之间有什么区别int与使用相比Convert ToInt32 使用它是否会带来某种性能提升 另外 每种情况应该用于哪些情况 目前我更倾向于使用Convert但我没有理由走任何一条路 在我看来 他们都实现了同一个目标
  • 我们如何改变tableview标题的字体?

    我正在为 tabelView 使用一些背景颜色 并且样式已分组 各部分标题中的文本不清楚 因此我需要修改文本颜色 以便标题文本应该可见 我想知道我们可以更改标题文本的颜色和大小吗 添加 terente 的答案 UIView tableVie
  • 如何仅在过去 365 天使用 group by 对 pandas 数据框执行滚动求和

    尝试计算 p id 仅过去 365 天的滚动总和 创建一个包含此滚动总和的新列 具有新列的数据框应如下所示 Date p id points roll sum 2016 07 29 57 11 11 2016 08 01 57 9 20 2
  • ag-grid valueFormatter 函数的自定义参数

    我可以将自定义参数传递给 ag grid valueFormatter 函数吗 喜欢 valueFormatter PercentageFormatter params 10 如果是 那么需要传递什么作为第一个参数来获取单元格值 Funct
  • 包含多种 Java 类型的表上的 DynamoDBMapper

    我有一个 DynamoDB 表 其中包含不止一种类型的逻辑实体 我的表存储 员工 和 组织 并在两者之间创建多对多关系 我正在努力解决如何使用 DynamoDBMapper 对实体和表进行建模 特别是在尝试编写将返回员工和组织的查询时 在我
  • 如何从phonegap android插件返回数组或其他集合元素类型

    这是我在 java 插件中测试代码的一部分 我正在使用phonegap 2 7 public boolean execute String action JSONArray args CallbackContext callbackCont
  • Requirejs - 在加载 data-main 之前配置 require

    我们第一次使用 requirejs 我在构建依赖项时遇到了麻烦 我已将主 app js 文件定义为 index html 中的 data main 属性 但是 我有一个文件定义了所有需要的路径 垫片配置 并且我希望它在 app js 文件之
  • 我可以使用 git 的脚本化提交模板吗?

    我们正在处理票证 当我们在第一行的 git 提交消息中使用票证编号时 票证就会使用提交消息进行更新 为了简单起见 我们总是在带有提交号的分支上工作 现在我想看到一条提交消息 其中票号已被填写 这一定是可能的 因为分支已经在提交模板中 但在被
  • 高效的弦修剪

    我有一个String价值 我想要trim https doc rust lang org stable std string struct String html method trim它 我可以做类似的事情 let trimmed s t
  • 计算每列中空值的数量

    我遇到过一个数据库 其表太宽 600 列 即使在没有参数的情况下询问前 100 行也需要 4 秒 我想把这些桌子缩小一点 为了弄清楚哪些列可以最容易地移动到新表或完全删除 我想知道每列中有多少个空值 这应该告诉我哪些信息可能最不重要 我将如