程序员人生 网站导航

用两种方法判断男性女性的存储过程

栏目:Sqlserver时间:2014-02-16 20:55:06

昨天有一朋友问我了这个问题,题目如下:创建一个名为CheckGender的存储过程,该过程接受一个名称作为其参数并检查名称的前缀为Ms. 还是Mr.如果前缀为Ms.则显示“你输入的是女性的名字”,如果前缀是Mr.则显示信息“你输入的是男性的姓名”,按照题目的要求自己设置信息执行上面的存储过程。
我读了两遍之后首先就想到了用两种方法一个是截取(substring),一个是模糊判断(like)。别的也有,不过我第一时间想到的就是这两个,下面我就把这两个判断分享给大家(大牛踩过、老鸟飞过、高手闪过)。

create proc CheckGender
@sex varchar(80)
as
if substring(@sex,1,3)='MR.'
begin
print '你输入的是男性的名字'
return
end
if substring(@sex,1,3)='MS.'
begin
print '你输入的是女性的名字'
return
end
return

执行存储过程
exec CheckGender 'MR.chen'

输出的信息是 “你输入的是男性的姓名”

另一种写法
create proc CheckGender
@sex varchar(80) output
as
if @sex like 'MR.%'
begin
print '你输入的是男性的名字'
end
if @sex like 'MS.%'
begin
print '你输入的是女性的名字'
end

执行存储过程
exec CheckGender 'MR.chen'

输出的信息是 “你输入的是男性的姓名”

虽然比较简单,但是我想有时候确实挺实用的!所以就分享给大家了,希望对大家有用。

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐