ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 一个查询的多种解法

一个查询的多种解法

原创 Linux操作系统 作者:itpubstream 时间:2008-08-07 11:43:36 0 删除 编辑

有这样一个表:
bianma    mingcheng
123324   aaaa
.
.
.
233232   bbbb
.
.
.
.
556566  gggg

现在要将bianma这一列重新编码,比如:1开头的全部从10001开始编到最后。2开头的全部从20001开始编到最后,,,9开头的从90001开始到最后,以此类推。

SELECT regexp_replace(bianma,'[0-9]','0',2)+ROW_NUMBER() OVER (PARTITION BY substr(bianma,1,1) ORDER BY bianma) AS bianma
      ,mingcheng
  FROM OLD_TABLE;
和

select substr(id, 1, 1) * 10000 + row_number() over(partition by substr(id, 1, 1) order by 1) id,
       z1.name
  from z1

 

最后说明:以上解法都是在论坛上复制过来的.作为我参考学习之用.

 


 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/15081535/viewspace-421403/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 日期函数的操作
请登录后发表评论 登录
全部评论

注册时间:2008-08-05

  • 博文量
    9
  • 访问量
    7553