问题陈述是:"创建一个查询,为您提供员工总数,并从该总数中,包括1995 - 1998年间雇用的员工总数".
我设法考虑了两个并测试了它们,所以我知道它们分开工作:
SELECT COUNT(employee_id) AS "Total number of employees"
FROM employees
Run Code Online (Sandbox Code Playgroud)
对于第一个问题和
SELECT COUNT(employee_id) AS "Total between 1995-1198"
FROM employees
WHERE hire_date BETWEEN '1-ENE-1995' AND '31-12-1998';
Run Code Online (Sandbox Code Playgroud)
你想要条件聚合.这是一种方法:
select count(*) as Count_Total,
sum(case when hire_date >= date '1995-01-01' and hire_date < date '1999-01-01'
then 1 else 0
end) as Count1995_1998
from employees;
Run Code Online (Sandbox Code Playgroud)
笔记:
date日期的限定符.这允许您在Oracle中输入ISO标准格式.使用日期时,请使用一致的格式.<以及更晚的日期.这是故意的.在Oracle中,具有date数据类型的列也可以包含时间.时间组件可以抛出查询.case在聚合函数中使用该语句.| 归档时间: |
|
| 查看次数: |
74 次 |
| 最近记录: |