求一关于复制的SQL语句

lzy6204 2010-08-13 02:41:59
表名:TT
数据:
Code Name FCount
1 A 2
2 B 1
3 C 3

要求:根据FCount 得到相应数目的记录集,生成内部序号
结果如下:

Code Name SortCode
1 A 1
1 A 2
2 B 1
3 C 1
3 C 2
3 C 3

有人说可以用序列,如何使用?或者利用连接查询,SQL语句如何实现?
谢谢!
...全文
174 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
minitoy 2010-08-13
  • 打赏
  • 举报
回复
互有收获,你收获结果,我们收获有趣的例子。
lzy6204 2010-08-13
  • 打赏
  • 举报
回复
人才济济啊,感谢你们,可以偷懒少写好多代码啦,呵呵
lzy6204 2010-08-13
  • 打赏
  • 举报
回复
感谢:zhuomingwang,测试通过
PS:我只需要用这个结果集做左联使用
minitoy 2010-08-13
  • 打赏
  • 举报
回复
12楼的效率比较高,你可以试试。
zzyzgydotnet 2010-08-13
  • 打赏
  • 举报
回复
顶一下12L
lzy6204 2010-08-13
  • 打赏
  • 举报
回复
我这个查询结果集只有二十几条数据啊
minitoy 2010-08-13
  • 打赏
  • 举报
回复
connect by在大数据量深层次的时候是很没效率的。。
不过看你的要求也没想出啥好办法。
实在不成就写存储过程,用循环一条条处理,也不会很快。。
  • 打赏
  • 举报
回复

tmp AS(
SELECT ROWNUM rn FROM dual
CONNECT BY ROWNUM<=(SELECT MAX(fcount) FROM tt))
SELECT a.*,b.rn FROM tt a,tmp b
WHERE a.fcount>=b.rn
ORDER BY a.code,b.rn;
lzy6204 2010-08-13
  • 打赏
  • 举报
回复
放到测试表里面可行,但是用一个子查询来替代这个表时,执行了十几分钟还没出结果
Liangao 2010-08-13
  • 打赏
  • 举报
回复
学习了!!!
minitoy 2010-08-13
  • 打赏
  • 举报
回复
那么多数据,那就太慢了
lzy6204 2010-08-13
  • 打赏
  • 举报
回复
试试先,还有个问题就是这个表是个一年几百万的大表,这样写效率上面不会有什么影响吧
zhone 2010-08-13
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 minitoy 的回复:]
SQL code
SQL> select * from test;

CODE NAME FCOUNT
---------- ---------- ---------------------
1 A 2
2 B ……
[/Quote]
正解,高手!
  • 打赏
  • 举报
回复
向5楼学习
我研究都没出来
minitoy 2010-08-13
  • 打赏
  • 举报
回复
SQL> select * from test;

CODE NAME FCOUNT
---------- ---------- ---------------------
1 A 2
2 B 1
3 C 3

SQL> SELECT DISTINCT code,NAME,LEVEL FROM test CONNECT BY code=code AND LEVEL<=fcount order by code,level;

CODE NAME LEVEL
---------- ---------- ----------
1 A 1
1 A 2
2 B 1
3 C 1
3 C 2
3 C 3

6 rows selected

SQL>
lzy6204 2010-08-13
  • 打赏
  • 举报
回复
网上查遍了都搜不到,难道没有一个人碰到类似的问题吗?
lzbbob1985 2010-08-13
  • 打赏
  • 举报
回复
可以考虑在过程中 用循环插入 只不过 效率低了
bingkunchen 2010-08-13
  • 打赏
  • 举报
回复
期待高手出马,等待最佳结果
lzy6204 2010-08-13
  • 打赏
  • 举报
回复
帮顶也有分啊

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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