SQL之Case语句

昨天需要写一个简单SQL,实现目标如下:

给数据库中TelNum(存储用户电话信息)一列添加前缀  +86-431- (随便拿个区号说明),如果原来的列是空值,则不作处理。

写完后发现执行效率极低,因为写SQL很少,我就直接用游标去做处理了,后来领导一看,笑我老土,让我去查查Case的用法,于是第二种处理就产生了,将两种方法都贴出来方便学习。

看来我得SQL弱的一塌糊涂,还得赶紧学习。

 

游标方式

 

/*用Case做判断,同样可用于Select语句*/

Update PersonForTel Set [TelNum] =
 Case [TelNum]
  When '' Then ''
  Else '+86-431-' + [TelNum]
 End

一个简单的Case例子:

Code
posted @ 2008-10-13 08:34  JerryShi  阅读(622)  评论(0编辑  收藏  举报