sql - 将列转换为行并在 Access 中获取复选框的总和
问题描述
我有一个 Access 数据库,其中的表中有复选框。我需要得到复选框的总和,但是我想将复选框列转换为行而不是列。
以下是它在表格中的显示示例:
Name DND Other CAP SAP DAP EXP
Person One -1 -1 NULL NULL -1 -1
Person Two NULL -1 -1 -1 NULL NULL
Person Three NULL -1 -1 NULL NULL NUll
这是我希望报告显示数据的方式:
Discharge Count
DND 1
Other 3
CAP 2
SAP 1
DAP 1
EXP 1
我尝试使用 Case 语句,但结果不正确
解决方案
SELECT 'DND' AS Discharge, COUNT(*) AS [Count] FROM tbl WHERE DND = -1
UNION ALL
SELECT 'Other' AS Discharge, COUNT(*) AS [Count] FROM tbl WHERE Other = -1
UNION ALL
等等
我认为没有更简单的方法。
这是航空代码,不确定您是否需要GROUP BY
条款。
推荐阅读
- git - Git revert 删除不应该删除的文件
- javascript - 从数组中删除相等的对象
- mysql - 在 MySQL 中的分层数据中检索树
- reactjs - Typescript Utils 类返回 React 组件
- graph - 数据工作室 h 中的水平瀑布图
- java - 在 JPA 实体中返回并保留 LinkedHashMap 而不是 Map
- list - 来自另一个电子表格的多个下拉列表,每个下拉列表中有 500 多个项目
- python - 基于第三个数据帧中匹配值的具有新布尔列的两个数据帧的乘积
- javascript - 有没有办法在反应中动态构建 svg?
- java - org.hibernate.type.SerializationException:无法在 Hibernate 代码中反序列化