在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函數中使用邏輯運算符來組合條件。