在Oracle中,FILTER函数可以与逻辑运算符一起使用,以对结果集进行筛选。逻辑运算符通常包括AND、OR和NOT。以下是一个示例,演示了如何在FILTER函数中使用逻辑运算符:
SELECT department_id,
COUNT(*) AS total_employees,
COUNT(*) FILTER (WHERE salary > 5000) AS high_salary_employees,
COUNT(*) FILTER (WHERE salary <= 5000) AS low_salary_employees
FROM employees
GROUP BY department_id;
在上面的示例中,我们使用FILTER函数分别统计了工资高于5000和低于等于5000的员工数量。这样可以更灵活地筛选数据,而不需要使用CASE语句。如果需要进一步筛选结果集,可以在FILTER函数中使用逻辑运算符来组合条件。