我正在做作业,但我们还没有学过 DECODE 函数,只学过 CASE。本周的单元是关于使用聚合函数。以下是我的作业问题以及我的教授想要的结果 -
“下面两道题非常有挑战性(需要使用DECODE函数来完成)。
创建一个查询,显示员工总数以及 1980 年、1981 年、1982 年和 1987 年雇用的员工总数。提供适当的列标题。(5分)
Total 1980 1981 1982 1987
----- ----- ----- ----- -----
14 1 10 1 2
Run Code Online (Sandbox Code Playgroud)这是我在服务器中输入的函数以及结果。我只尝试了1980年,所以我不浪费时间,但我还需要1981年、1982年和1987年-
SELECT COUNT(ename) AS "Total",
COUNT(DECODE(hiredate, '80', '1980'))
FROM emp;
Total COUNT(DECODE(HIREDATE,'80','1980'))
----- -----------------------------------
14 0
Run Code Online (Sandbox Code Playgroud)
这是“雇用日期”列的数据类型 -
HIREDATE
---------
17-NOV-81
01-MAY-81
09-JUN-81
02-APR-81
28-SEP-81
20-FEB-81
08-SEP-81
03-DEC-81
22-FEB-81
03-DEC-81
17-DEC-80
HIREDATE
---------
09-DEC-82
12-JAN-83
23-JAN-82
Run Code Online (Sandbox Code Playgroud)
已选择 14 行。
感谢任何人的帮助!