关于UPDATE的一个用法

CREATE TABLE [dbo].[tb] (
    [name] [varchar] (
100 ) COLLATE Chinese_PRC_CI_AS NULL 
) ON [PRIMARY]
GO

insert into tb 
Select (
' a ' )
union
select (
' b ' )
union
select (
' b ' )
union
select (
' a ' )
union 
select (
' a ' )
union
select (
' b ' )

declare @i 
int
declare @y varchar(
100 )

select identity(
int , 1 , 1 ) id, 0   as  uid ,name into # from tb order by  name

Update # Set uid 
=  Case When name  =  @y then @i  else   1  end,
             @i 
=   case  When name  =  @y Then @i  +   1   else   1  end, @y  =  name

id          uid         name                                                                                                 
-----------   -----------   --------------------
1             1            a
2             2            a
3             3            a
4             1            b
5             2            b
6             3            b
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值