postgreSQL Where Clause with in IF Clause



问问题的一个变体 SQL:WHERE 子句中的 IF 子句

假设:DeptID是传递给 SQL 查询的参数,如果@DeptID为 null,则显示所有行,否则按DeptID过滤结果。

一些伪代码,如

SELECT * 
FROM EMPLOYEE 
IF :DeptID not = null 
WHERE DeptID = :DeptID
ELSE (no filter)

寻找适合PostgreSQL和MySQL的正确语法

预期结果为:当传入DeptID参数为NULL时,则显示所有员工。

当参数DeptID作为 10 传递时,显示 ID 为 10 的部门员工。

SELECT * 
FROM EMPLOYEE 
WHERE :DeptID is null 
OR :DeptID = DeptID

最新更新