sql – 如何查找哪些列没有任何数据(所有值都为NULL)?
发布时间:2021-01-18 05:38:36 所属栏目:MsSql教程 来源:网络整理
导读:我在数据库中有几个表.我想找到哪些列(在哪些表中)没有任何值(列中的所有NULL).我在下面的例子中,结果应该是 TestTable1 -- Var2TestTable2 -- Variable1 我不知道如何创建这种查询.非常感谢您的帮助! --create first tablecreate table dbo.TestTable1 (
我在数据库中有几个表.我想找到哪些列(在哪些表中)没有任何值(列中的所有NULL).我在下面的例子中,结果应该是 TestTable1 --> Var2 TestTable2 --> Variable1 我不知道如何创建这种查询.非常感谢您的帮助! --create first table create table dbo.TestTable1 ( sur_id int identity(1,1) not null primary key,var1 int null,var2 int null ) go --insert some values insert into dbo.TestTable1 (var1) select 1 union all select 2 union all select 3 --create second table create table dbo.TestTable2 ( sur_id int identity(1,variable1 int null,variable2 int null ) --and insert some values insert into dbo.TestTable2 (variable2) select 1 union all select 2 union all select 3 解决方法对于单个列,count(ColumnName)返回ColumName不为null的行数:select count(TheColumn) from YourTable 您可以为所有列生成查询.根据Martin的建议,您可以使用is_nullable = 1排除不能为null的列.例如: select 'count(' + name + ') as ' + name + ',' from sys.columns where object_id = object_id('YourTable') and is_nullable = 1 如果表的数量很大,您可以以类似的方式为所有表生成查询.所有表的列表都在sys.tables中. (编辑:南京站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 垃圾邮件玩猫捉鼠游戏 手段愈发隐蔽高超
- sql-server-2008 – SQL Server 2008 – 一个表24gb,删除了
- html中table固定头部表格tbody可上下左右滑动
- 健身+娱乐=昂达“千里眼” VR505、VR503
- HTML教程:收集的常用的HTML标签(5)
- sql-server – 如何编写SQL Server作业的脚本以进行迁移
- 如何从linq查询中查看生成的sql
- 讯怡强势推出甲克虫,闪盘市场波澜再起
- sql-server – SQL Server ROWLOCK over SELECT如果不存在I
- sql-server – 未记录的CONVERT样式 – datetime 23