我正在开发HRM网络应用程序。现在我必须在此应用程序中制作出席报告。 为此我们有一个高级搜索报告表格,我们有一个EmployeeId,DateFrom和DateTo字段来搜索日期明智的报告。 我想使用存储过程来搜索关注度报告。
我面对employeeId,DateFrom和DateTo的问题不是比较的。但我们必须搜索给定的输入 它可能只有employeeId,或者可能是employeeId和DateFrom,有些可能是employeeId,DateFrom,DateTo
当请求进入存储过程时,当必须存在任何参数时,我必须解决空值 希望你了解我的情况......任何人都可以帮助我...
答案 0 :(得分:1)
CREATE PROCEDURE [dbo].[USP_Employees_Search]
@EmployeeId Int = Null
,@FromDate Date = Null
,@ToDate Date = Null
AS
BEGIN
Set Nocount On;
Select *
From dbo.Employees As e With (Nolock)
Where (Isnull(@EmployeeId,0) = 0 Or e.EmployeeId = @EmployeeId)
And (@FromDate Is Null Or e.[someDateAttribute] >= @FromDate)
And (@ToDate Is Null Or e.[someDateAttribute] <= @Todate)
END
GO