昨天有一朋友問我了這個問題,題目如下:創建一個名為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'
輸出的信息是 “你輸入的是男性的姓名”
雖然比較簡單,但是我想有時候確實挺實用的!所以就分享給大家了,希望對大家有用。
|
作者:青蘋果 座右銘:不斷的反省自己!然后加以改變! 感興趣的技術:.NET、數據庫、JavaScript、C#、ajax、winform、jquery、extjs 本文出處:http://www.cnblogs.com/xinchun/ 本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。 |