ITPub博客

首页 > IT职业 > IT生活 > SQL流程控制元素IF...ELSE

SQL流程控制元素IF...ELSE

IT生活 作者:welchang 时间:2021-09-09 09:45:05 0 删除 编辑

IF...ELSE元素在SQL Server中,是用于控制代码程流(逻辑处理)。如果条件为TRUE,则执行指定的语句或语句块;如果条件为FALSE或UNKNOWN则执行指定的另外语句或语句块。ELSE部分是可选的。

演示:

代码


--判断存储过程是否存在
IF OBJECT_ID ('[dbo].[usp_Employee_Search]','u') IS NOT NULL
    --如果存在,DROP掉
    DROP PROCEDURE [dbo].[usp_Employee_Search]

--分隔批处理单元
GO
--创建新存储过程
CREATE PROCEDURE [dbo].[usp_Employee_Search]
(
    @ConditionExpression nvarchar(3000)
)
AS
    --宣告一个变量
    DECLARE @sql nvarchar(4000)    
    --判断传入参考的长度。
    IF LEN(@ConditionExpression) = 0
    --如查参数长度为零,即没有参数传入,把默认SQL语句赋值给@sql变量
     SET @sql ='SELECT * FROM [dbo].[udf_Employee]()'
    ELSE
        --如果参数长度不为零,把默认SQL语句与参数串连之后赋值给@sql变量
        SELECT @sql = 'SELECT * FROM [dbo].[udf_Employee]() WHERE ' + @ConditionExpression 
        --使用EXECUTE执行这SQL语句
    EXECUTE(@sql)

 

 

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4830/viewspace-2811816/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-07-17

  • 博文量
    252
  • 访问量
    17974