1
조건부 WHERE
절을 구현해야하는 저장 프로 시저가 있습니다.SQL Server 저장 프로 시저에서 조건을 수행하는 방법
나는 @name
매개 변수, @startdate
및 @enddate
매개 변수를가집니다.
@name is null
경우와@startdate
&@enddate
가 다음 날짜 범위에 대한 데이터를 반환 주어집니다 :어떻게 조건을 작성할 수 있습니다.
@name
이 주어진 경우@startdate
&@enddate is null
여기에
내 전류
@name
경우와 @startdate
& @enddate
다음 이름 및 날짜 범위 평가 데이터를 반환 주어진 이름에 대한 데이터를 반환 절차 alter procedure dbo.sp_emp
@name varchar(50),
@startdate date,
@enddate date
as
begin
select *
from employee
where
Name = @name
and dob between @startdate and @enddate
end
ISNULL 버전. 너의 의미를 잘못 해석하면 고쳐주세요. – scsimon
사이드 노트 : 저장 프로 시저에'sp_' 접두사를 사용하지 말아야합니다 **. Microsoft는 [자체 저장을 위해이 접두어를 예약했습니다 (* 저장 프로 시저 명명 * 참조)] (http://msdn.microsoft.com/en-us/library/ms190669%28v=sql.105%29.aspx) 및 당신은 미래에 언젠가 이름 충돌의 위험을 감수해야합니다. [저장 프로 시저 성능에 좋지 않습니다.] (http://www.sqlperformance.com/2012/10/t-sql-queries/sp_prefix). 'sp_'를 피하고 다른 것을 접두어로 사용하는 것이 가장 좋습니다. –