我有一个表,其中包含大约 30 列表示特定属性的布尔标志。我想将它们按频率排序作为记录集连同它们的列名一起返回,如下所示:
Attribute Count
attrib9 43
attrib13 27
attrib19 21
etc.
到目前为止,我的努力可以实现类似的效果,但我只能使用条件 SUM 获取列中的属性,如下所示:
SELECT SUM(IIF(a.attribIndex=-1,1,0)), SUM(IIF(a.attribWorkflow =-1,1,0))...
此外,对于所有 30 个 SUM/IIF,查询已经变得有点笨拙,并且不会在没有人工干预的情况下处理属性数量的任何变化。
属性列的前六个字符是相同的(attrib)并且在表中是唯一的,是否可以在列名中使用通配符来选择所有适用的列?
另外,我可以旋转结果给我一个排序的两列记录集吗?
我正在使用 Access 2003,查询最终将通过 Excel 中的 ADODB。