SqlServer存储过程基础小结

本文介绍如何在SQL中创建存储过程,并演示了三种不同的多条件查询方法,包括使用动态SQL、多个AND条件组合以及利用ISNULL函数进行查询。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、存储过程创建

1 CREATE PROCEDURE sys.sp_student
2     @id int,
3     @name varchar(20),
4     @age int
5 AS
6 BEGIN
7     SELECT * from Student WHERE Id=@id
8 END
9 GO
View Code

 

2、参数定义

@id int,

@name varchar(20)

@age int OUTPUT --OUTPUT表示为输出参数

declare @where varchar(200) --declare 全局变量

3、多条件查询

第一种方法:

SET @where='SELECT * FROM Student WHERE 1=1'
    if(@id is not null)
        SET @where=@where+' AND Id='+''''+@id+''''
    if(@name is not null AND @name<>'')
        SET @where=@where+' AND Name= '+''''+@name+''''
    if(@age is not null)
        SET @where=@where+' AND Age='+@age
    if(@sex is not null AND @sex <>'')
        SET @where=@where+' AND Sex='+''''+@sex+''''
    EXEC (@where)
View Code

 

第二种方法:

select * from Student 
where
     (Id= @id or @id is null) and
     (Name = @name or @name is null) and
     (Age=@age or @age is null)
View Code

第三种方法:

SELECT * FROM Student where 
  Id= ISNULL(@id,Id) AND
  Name = ISNULL(@name,Name) AND
      Age=ISNULL(@age,Age)
View Code

 

转载于:https://www.cnblogs.com/szxbAndwjs/p/5114272.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值