oracle - 如何获取Oracle中特定记录的计数?

标签 oracle plsql subquery

我正在从员工表中获取各种状态,该表有 230 条记录,状态低于 5 个。 我已经编写了查询来获取每个状态的计数,但现在需要状态 A 和 B 的组合计数作为 AB。

我的查询:

SELECT DISTINCT Status AS Status,
           COUNT(Status ) AS StatusCount
    FROM EMPLOYEE
    GROUP BY Status

我的查询输出是:

Status    Count
A           100
B           50
C           30
D           10
E           40

我希望结果为 A&B 组合并保持不变。

Status      Count
A&B          150
C             30
D             10
E             40

最佳答案

使用案例

SELECT case when Status in ('A','B') 
            then 'A&B'
            else Status
       end AS Status,
       COUNT(Status) AS StatusCount
FROM EMPLOYEE
GROUP BY case when Status in ('A','B') 
              then 'A&B'
              else Status
         end

关于oracle - 如何获取Oracle中特定记录的计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20284097/

相关文章:

java - 将日期转换为全文

sql - oracle中如何分离包含数据varchar和数字和日期的字段

sql - 甲骨文 SQL : update table conditionally based on values in another table

mysql - 有什么方法可以从派生表中进行子选择吗?

mysql 子查询错误 [21000][1241] 操作数应包含 1 列

mysql - 如何从 MySQL 中的选择查询中获取列名?

python - ORA-01036 : illegal variable name/number (cx_Oracle)

Oracle SQL Developer 详细输出

java - Hibernate 加入两个不相关的表,当两个表都有复合主键时

regex - PL/SQL函数返回带有正则表达式特殊字符的字符串