为表添加排序字段 (动态SQL、游标的使用)

本文介绍了一种在SQL中为特定类型的记录批量添加排序字段的方法。通过创建存储过程并使用游标来遍历符合条件的数据,从而实现对每一种类型的数据进行独立排序。此方法适用于需要对大量数据进行分类排序的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景:一个表中的数据有几万条,现要按类型(某一个字段的有限值,如东、南、西、北四个区域等)增加一个排序字段。

         假设表有一个主键标识列,可以初始化一个排序列为idx,可以这样做

         update 表名 set idx=id    --这样可以一步到位,按标识列初始化排序列。

 

要求:现在要求是这样的,将数据type='东'|'南'|'西'|'北'四个区域分别排序,按1,2,3,4,...的顺序排下去?

 

场景:现在有这样的一张表 eric

 

数据是这样的:

 

 

那么要求姓名分类添加排序字段怎么初始化呢?

 

我们可以先添加排序字段:

alter table eric add idx int

 

再定义一个通用的存储过程完成这件事:

 

 

最后调用存储过程:

 

 

最后我们可以查询看看:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值