查询语句中添加自动编号

本文介绍了两种使用SQL进行排名的方法。一种是通过一条SQL语句实现,但性能不佳且存在并列问题;另一种则利用了SQL的identity function,虽然需要多步操作,但性能更优。

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

1、使用一条sql语句,原理是在结果中查询大于等于该记录的记录跳数。

   如:select count(*) as Rank,a1.urlname from urlconfig a1,urlconfig a2 where a1.urlname>a2.urlname
      group by a1.urlname order by Rank 。

  缺点:性能不好;如果存在相同记录,就会出现并列情况。
  2、sql提供了identity function,可以获得标识列的值,不过这个函数只能用于select into语句,所以需要引入临时表
     select identity(int,100,1)as rank,urlname into #tmp from urlconfig select * from #tmp drop table #tmp
     drop table #tmp

   这种方法性能和适用性都比第一种方法号,缺点是必须通过几条sql语句才能完成。一般还是建议在客户端完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值