VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 770|回复: 3

帮我看看这个SQL的存储过程为什么运行不了

[复制链接]

1

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-1-11 20:00:01 | 显示全部楼层 |阅读模式
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO

ALTER  procedure CombinedSearch
@StartTime smalldatetime,
@EndTime smalldatetime,
@empState varchar(100)= null
as
if @empState<>null
select * from jobseeker
where (@StartTime<=InterviewTime and @EndTime>=InterviewTime) and empState=@empState
else if @empState=null
select * from jobseeker
where (@StartTime<=InterviewTime and @EndTime>=InterviewTime)

GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
目的是在@empState有值是和没有值是分别运行不同的分支。存储过程的建立没有问题的。但是我运行这个存储过程时去搜索不到结果。但是应有符合条件的结果的。请各位看看。
回复

使用道具 举报

0

主题

14

帖子

12.00

积分

新手上路

Rank: 1

积分
12.00
发表于 2020-1-16 11:18:02 | 显示全部楼层
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO

ALTER  procedure CombinedSearch
@StartTime smalldatetime,
@EndTime smalldatetime,
@empState varchar(100)= null
as
if @empState is not null
select * from jobseeker
where (@StartTime<=InterviewTime and @EndTime>=InterviewTime) and empState=@empState
else if @empState is null
select * from jobseeker
where (@StartTime<=InterviewTime and @EndTime>=InterviewTime)

GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
回复

使用道具 举报

0

主题

211

帖子

108.00

积分

新手上路

Rank: 1

积分
108.00
发表于 2020-1-16 12:09:01 | 显示全部楼层
汗, 不能用<>NULL, =NULL 來判斷的
回复

使用道具 举报

0

主题

4

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-8-19 00:30:01 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表