要么仅获取具有指定@Lastname的那些userID,要么如果@LastName =’All’,则即使它们具有NULL值作为其LastName,也获取所有userID。
SELECT userID INTO #table FROM users WHERE LastName = CASE WHEN @LastName = 'All' THEN LastName ELSE @LastName END
上面的查询仅返回LastName不为NULL的那些userID。
另一种较短的形式
where @LastName in ('All', LastName);
SqlFiddle