Oracle面试
- 格式:doc
- 大小:28.00 KB
- 文档页数:5
编程题目1:Here's two table STUDENT and SCORE_RANK, write a SQL, list all student's name who ranks 'A'Table STUDENTCOLUMN NAME COLUMN TYPE CommentID char(9) not nullable Student‟s IDNAME Varchar(30) not nullable Student‟s NameSCORE Int nullable Student‟s scoreTable SCORE_RANKCOLUMN NAME COLUMN TYPE CommentLO_SCORE Int not nullable Low scoreHI_SCORE Int not nullable High scoreRANK Char(1) nullable rank2. Here‟s two table S…GOOD LEARNER‟, write a SQL, lisTUDENT and SCORES,a student who have 3 or more courses rank …A‟is at all …GOOD LEARNER‟…s name.Table STUDENTCOLUMN NAME COLUMN TYPE CommentID char(9) not nullable Student‟s IDNAME Varchar(30) not nullable Student‟s NameTable SCORECOLUMN NAME COLUMN TYPE CommentSTUDENT_ID char(9) not nullable Student‟s IDCOURSE_ID Int not nullable Course IDSCORE Int not nullable Stuend‟s score of this course编程题目2:四张表学生表student(sid,sname),教师表teacher(tid,tname),课程表course(cid,cname,ctype),选课表choose_course(ccid,sid,tid,cid)insert into student values(1,'小明');insert into student values(2,'小花');insert into teacher values(1,'陈红');insert into teacher values(2,'陈白');insert into course values(1,'语文','文科');insert into course values(2,'数学','理科');--小明选了陈红老师的语文insert into choose_course values(1,1,1,1);--小明选了陈红老师的数学insert into choose_course values(2,1,1,2);--小花选了陈红老师的数学insert into choose_course values(3,2,1,2);--小明选了陈白老师的语文insert into choose_course values(1,1,2,1);--小花选了陈红老师的语文insert into choose_course values(4,2,1,1);1.查找陈红老师教的学生是那些?2.找学生小明所有的文科老师?3.找出没有选修陈红老师的学生4.教的学生最少的老师?编程题目3:8:00--12:00 为迟到, 12:00--18:00 为早退打卡表cardcreate table card(cid number(20),ctime date,cuser number(20));人员表personcreate table person(pid number(20),name varchar2(10))--插入人员表的数据insert into person values(1,'a');insert into person values(2,'b');--插入打卡的数据insert into card values(1,to_date('20090719080200','yyyymmddhh24miss'),1); insert into card values(2,to_date('20090719180200','yyyymmddhh24miss'),1); insert into card values(3,to_date('20090719090200','yyyymmddhh24miss'),2); insert into card values(4,to_date('20090719170200','yyyymmddhh24miss'),2); insert into card values(5,to_date('20090720080200','yyyymmddhh24miss'),1); insert into card values(6,to_date('20090720160200','yyyymmddhh24miss'),1); insert into card values(7,to_date('20090720070200','yyyymmddhh24miss'),2); insert into card values(8,to_date('20090720200200','yyyymmddhh24miss'),2); 使用视图判断早退,迟到人员?编程题目4:删除一张表重复记录(ID 是自增唯一,重复记录:其他字段都是一样)非常经典的一道面试题(可能存在很多数据,要求性能比较高)1 louis 202 louis 203 jimmy 304 louis 20------------------------------------------------------------------编程题目5:用一条SQL 语句查询出每门课都大于80 分的学生姓名name kecheng fenshu张三语文81张三数学75李四语文76李四数学90王五语文81王五数学100王五英语90编程题目6:有一表table1 有两个字段FID,Fno,写一个SQL 语句列出该表中一个FID 对应多个不同的Fno 的纪录。
类如:101 1001101 1001102 1002102 1003103 1004104 1005104 1006105 1007105 1007105 1007105 1008结果:102 1002102 1003104 1005104 1006105 1007105 1008编程题目7:有员工表empinfo(Fempno varchar2(10) not null pk,Fempname varchar2(20) not null,Fage number not null,Fsalary number not null);假如数据量很大约1000 万条;写一个你认为最高效的SQL,用一个SQL 计算以下四种人:fsalary>9999 and fage > 35fsalary>9999 and fage < 35fsalary<9999 and fage > 35fsalary<9999 and fage < 35每种员工的数量;编程题目8:表内容:2005-05-09 胜2005-05-09 胜2005-05-09 负2005-05-09 负2005-05-10 胜2005-05-10 负2005-05-10 负如果要生成下列结果, 该如何写sql 语句?胜负2005-05-09 2 22005-05-10 1 2编程题目9:请用一个sql 语得出结果从table1,table2 中取出如table3 所列格式数据table1月份mon 部门dep 业绩yj-------------------------------一月份01 10一月份02 10一月份03 5二月份02 8Oracle 教程-40-二月份04 9三月份03 8table2部门dep 部门名称dname--------------------------------01 国内业务一部02 国内业务二部03 国内业务三部04 国际业务部05 其他部门table3 (result)部门dep 部门名称一月份二月份三月份--------------------------------------01 国内业务一部10 0 002 国内业务二部10 8 003 国内业务三部0 5 804 国际业务部0 0 905 其他部门编程题目10:一个表中的Id 有多个记录,把所有这个id 的记录查出来,并显示共有多少条记录数。