真实面试题--Oracle存储过程
clear 2013-03-27 12:40:03 create table CUSTOMERS --客户表
(id number(8) primary key,taaccoid char(12),name varchar2(100),birthdate number(8),certno varchar2(20),province number(8),age number(4));
1 111000051346 李惠萍 19780304 430111197803043000 2 32
...
create table PROVINCE --省份表
(id number(8) primary key,name varchar2(100));
1 北京市
...
create table TA_SHARE --基金份额表
(taaccoid char(12),fundcode char(6),curshare number(16,2));
111000051346 110002 5228.48
create table PRODUCTS --基金产品表
(fundcode char(6),fundname varchar2(100));
110001 产品1
...
建立存储过程,输入参数:I_FUNDCODE --基金产品,I_PROVINCE --省份
输出参数:O_STATUS --态值,RT_CURSOR --返回游标
返回如下表格的数据:
省份 基金产品 1~20岁(个) 21~40岁(个) 41岁以上(个) 份额
分别在以上表上建立合理的索引,要求存储过程中写出的SQL必须不能对CRM_CUSTOMERS和CRM_TA_SHARE进行全表扫描