我有一份调查问卷表格,其中存储了表格的价值,可以在以后完成(如果没有完成)。 我想要一种跟踪表单完成百分比的机制。我想过计算不完整字段的百分比与表的字段总数的比较。我想要这样的东西:
SELECT * FROM tbapplication t WHERE t.* IS NOT NULL
上面的SQL不起作用。我的表有100多个字段,所以我相信包括所有字段并检查每个字段的IS NULL是不是正确的方法。 有什么想法吗?
答案 0 :(得分:0)
无法以您尝试的方式对表中的每一列进行IS NULL检查。
第一个问题应该是如果我的表格有100列?
我认为你的调查答案很多,每个答案都有自己的专栏?
您需要重新设计表格并规范化表格的结构。
答案 1 :(得分:0)
不幸的是,我无法想办法询问SQL当前特定行中有多少列NULL
。目前我想到了三种解决方案,可以让您以更“一般”的方式实现您想要的目标。你可以坚持其中一个:
每次存储行时:计算缺失字段的数量,并将此信息存储在专用表列中。
根据syscolumns
中存储的信息自动生成您的查询。
(可能?)重新设计您的数据库,以便将信息存储在相关的行而不是列中。