某省电信公司需要做一个关于年龄段和所购买套餐额度范围的一个统计,该电信业务有大约三千万用户在使用,该公司有一张物化视图MV_USER_PKG,记录着每个用户的user_name(用户名,字符串)、user_age(年龄,整数)、curr_pkg_amt(当前套餐金额,整数,范围50~500),具体统计需求为显示:
查出大小超过1GB(按1024^3字节算)的表和索引,假定大小超过1G的表和索引均超过五个(DBA_SEGMENTS视图):
在当前用户下,根据指定的表名,按列的正序排列,将列名串成逗号分隔的字符串。请用PL/SQL的过程(PROCEDURE)实现。注意:1)不要使用WMSYS.WM_CONCAT函数 2)当前用户下可能没有指定的表。 3)如果可以,请用一条SQL实现。
1
batman2010 2015-04-28 23:02:56 +08:00
第一题可以不用join实现吗?直接group by分组最简单。
|