亚信联创(interview)
table 1:
table dep(
dep_id number(20),//部门编号
dep_name varchar(50) //部门号
)
table 2:
emp(
emp_id number(20),//员工编号
emp_name varchar(50),//员工姓名
dep_id number(20) //部门编号
)
table 3:
table busi(
emp_id number(20),//员工编号
busi_id number().//业务编号
busi_status char(),//业务状态 1。正常,2。未生效,3.失效,4.删除
busi_datatime date,//业务时间
busi_desc varchar()//业务描述
)
问题1.
完成一个procedure ,输入dep_id,输出该部门员工数,并对该部门的业务记录按下列更新
busi_datetime 早于20010101 12:00:00 的 busi_status显示“删除”
busi_datetime 早于20020101 12:00:00 的 busi_status显示“失效”、
20020101 12:00:00 到20030101 12:00:00 busi_datetime时间修该为原busi_datetime+5天
问题2:
Table busi 有1000000玩记录,有一句sql:
select emp_id,busi_id,busi_datetime,busi_desc from where emp_id=:value1 and busi_status=value2
执行异常频繁。效率很差,请解释该sql的执行计划,有什么方法可以提高sql的执行效率
问题3:
业务量增加,table busi数据量急剧增加,每天增加20W,又删除该表的历史数据10w,俩个月后,上面的sql执行效率慢,有什么办法改变