求一个序号有关的SQL

愤怒的小蒋 2009-12-16 11:22:45
有个SQL不会写,来这里找大家帮帮忙,谢谢了!!

比如数据是这样的
id assetname person
1 计算机 张三
2 椅子 赵六
3 计算机 李四
4 计算机 王五
5 椅子 冯七
6 桌子 蒋八

想要的结果
aid assetname person
1 计算机 张三
1 计算机 赵六
1 计算机 李四
2 椅子 王五
2 椅子 赵六
3 桌子 冯七

其实就是一种设备一个序号号 按assetname排序


...全文
58 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
愤怒的小蒋 2009-12-16
  • 打赏
  • 举报
回复
谢谢 太快了。
iqlife 2009-12-16
  • 打赏
  • 举报
回复
DENSE_RANK()

说明:返回结果集分区中行的排名,在排名中没有任何间断。行的排名等于所讨论行之前的所有排名数加一。
语法:DENSE_RANK () OVER ( [ < partition_by_clause > ] < order_by_clause > )
备注:如果有两个或多个行受同一个分区中排名的约束,则每个约束行将接收相同的排名。

学习了
ACMAIN_CHM 2009-12-16
  • 打赏
  • 举报
回复
select (select min(id) from table1 where assetname=a.assetname) as aid
assetname,person
from table1 a
order by aid
小灰狼W 2009-12-16
  • 打赏
  • 举报
回复
select dense_rank()over(order by assetname)aid,
assetname,person
from table1
order by 1

17,088

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧