当前位置:首页>开发>正文

关于Oracle数据库编程题的解答。谢谢各位! Oracle数据库面试题学校的考试,求答案求思路

2023-04-13 00:28:29 互联网 未知 开发

 关于Oracle数据库编程题的解答。谢谢各位! Oracle数据库面试题学校的考试,求答案求思路

关于Oracle数据库编程题的解答。谢谢各位!

1、查询姓“李”的老师的个数;
SELECT COUNT(Tno) FROM Teacher WHERE Tname LIKE 李%

2、查询学过“c001”并且也学过编号“c002”课程的同学的学号、姓名;

SELECT Sno, Sname
FROM Student
WHERE sno IN(SELECT sno
FROM (SELECT Sno FROM SC WHERE Cno = c001) t (SELECT Sno FROM SC WHERE Cno = c002) t WHERE t1.sno = t2.sno)

3、查询学过“叶平”老师所教的所有课的同学的学号、姓名;
SELECT Sno, Sname
FROM student
WHERE Sno IN(SELECT SC
FROM SC
WHERE CNO IN (SELECT CNO FROM Course WHERE Cname = 叶平)
GROUP BY SC HAVING COUNT(CNO) = (SELECT COUNT(CNO) FROM Course WHERE Cname = 叶平))

4、查询“c001”课程比“c002”课程成绩高的所有学生的学号

SELECT C1.SC
FROM (SELECT SC, Score FROM SC WHERE Cno = c001) c (SELECT SC, Score FROM SC WHERE Cno = c002) cWHERE c1.SC = c2.SC
AND c1.Score > c2.Score
如果只有C1,而没有C2成绩,用这个好一点
SELECT SC
FROM (SELECT SC, Score FROM SC WHERE Cno = c001) cleft join (SELECT SC, Score FROM SC WHERE Cno = c002) cON c1.SC = c2.SC AND c1.Score > c2.Score

5、查询平均成绩大于60分的同学的学号和平均成绩;
SELECT Sno, AVG(score)
FROM SC GROUP BY Sno Having AVG(score) > 60

6、查询所有同学的学号、姓名、选课数、总成绩;
SELECT stu.Sno, stu.Sname, COUNT(Cno), SUM(score)
FROM Student stu, SC
WHERE stu.Sno = Sc.sno
GROUP BY stu.sno, stu.Sname

7、查询没有学全所有课的同学的学号、姓名;
SELECT Sno, Sname
FROM SC
WHERE Sno NOT IN (SELECT Sno
FROM SC
GROUP BY SC
HAVING COUNT(CNO) < (SELECT COUNT(DISTINCT CNO) FROM SC))

Oracle数据库面试题学校的考试,求答案求思路

1. select decode(性别字段,A,男,B,女,未知) as 性别  from 表名     (通过decode函数得到想要的值)

2. select 购物人 from 购物信息 having count(购物人||商品名称)>1    (count求出购物人购买商品大于1的)

3. select 姓名,课程,分数 from 成绩表 where 姓名 not in(select 姓名 from 成绩表 where 分数<=60)   (姓名不包含小于60的)

4. select  t.* from (select name,avg(score)  score from  student)  s,student t

      where s.name=t.name and s.name like 张%  and  s.score>60   (姓张的大于60的,使用模糊查询,like 以张开头的字段)

1. select rownum,表.* from 表 where id=要查的id号     (rownum 记录行数)

2. table3没有图看不到

oracle数据库题,求答案

select * from t_Account twhere t1.userName like %zoomkey%
and rownum 〈=order by t1.id desc

oracle数据库考试简答题,三个都答了才给分哦

cursor:静态游标 reference cursor:动态游标
在多用户并发时可以防止:丢失更新,脏读,不可重现的读取
第三个问题表示看不懂,shutdown是关闭数据库,服务指的是什么?
数据库启动过程:nomount(读取参数文件), mount(控制文件,口令文件)open(数据文件,日志文件)

oracle数据库考试简答题,请回答一下吧,三个都回答了才会给分哦

EF CURSOR游标.
3、Open the database.oracle打开数据文件和日志文件之后.
命令为 startup,想要脏读都没可能。
  - Oracle 支持 SQL92 标准中的“读取已提交数据(read committed)”隔离级别,(这也是Oracle默认的隔离级别)。
  - Oracle不支持 SQL92 标准中的“可重现的读取(repeatable read)”隔离级别。这个只是从宏观上来看oracle启动的整个过程.如果数据文件和联机日志文件不存在,oracle就会报错,所以如果你要重建控制文件的时候,在整个过程中密码文件都是必须的:
Reading the parameter file initsid.ora
Allocating the SGA
Starting the background processes
Opening the ALERT file and the trace files
读参数文件是为了读里面的dbname.因为下一步要打开各个数据文件和联机日志文件.
2.
3,需要工作在这个状态下。
2、Mount the database,要想避免“不可重现的读取(nonrepeatable read)”可以直接使用“序列化(serializable)”隔离级别。
  - Oracle 支持 SQL92 标准中的“序列化(serializable)”隔离级别,但是并不真正阻塞事务的执行(这一点在后文还有详述)。
  - Oracle 还另外增加了一个非SQL92标准的“只读(read-only)”隔离级别。

oracle startup的时候分为三个步骤:
1. Start an instance,如果在mount状态下命令为: alter database open. Mount the database,还有控制文件的路径等。在这一步并不打开控制文件,如果在nomount状态下命令为: alter database mount
在这一步中主要工作有:
Associating a database with a previously started instance
Locating and opening the control files specified in the parameter file
Reading the control files to obtain the names and status of the data files and redo log files
在这一步. Open the database.
三个步骤中所要做的工作主要如下:
1、start an instance
命令为 startup nomount
在这一步中主要工作有,恢复文件,才能使下一步不报错误,会对数据文件和日志文件进行一致性检查,如果发现不一致,会启动SMON进程进行实例恢复.

另外,各个内存参数的大小,主要用到的文件是控制文件.然后读控制文件,得到各个数据文件和联机日志文件的名字和状态(online or offline) ,但是并不去检查各个文件是否存在.所以如果你要修改数据文件的名字和重建联机日志文件等操作,就需要工作在mount状态下,比如sga的大小,以便分配内存.
命令为 startup mount:
动态游标,在运行的时候才能确定游标使用的查询。分类:
强类型(限制)REF CURSOR,规定返回类型
弱类型(非限制)REF CURSOR,不规定返回类型,可以获取任何结果集。
TYPE ref_cursor_name IS REF CURSOR [RETURN return_type]

Oracle 的隔离级别

  SQL92定义的隔离级别在理论上很完善,因为要验证操作的用户是否具有适当的权限,你就需要在mount状态下,但是 Oracle 显然认为在实际实现的时候并不应该完全照搬SQL92的模型。
  - Oracle不支持 SQL92 标准中的“读取未提交数据(read uncommitted)”隔离级别,所以如果数据文件不存在.
在这一步中主要工作有:
Opening the online data files
Opening the online redo log files
在这一步中,数据库主要的工作是打开第2步中在控制文件中读到的在线的联机日志文件和数据文件

急求!!Oracle考试的几道题

1、select * from 商品信息表 where 销售单价 between 1000 and 2000
2、select * from 商品信息表 order by 销售单价 desc
3、select * from 商品信息表 where ( 商品名称 like A% or 商品名称 like %R ) and 单价>3000
4、select * from 商品信息表 where 产地 in (南京市,北京市)
select * from 商品信息表 where 产地=南京市 or 产地=北京市

5、select count(商品种类) from 表名 where 供应商=供应商名

最新文章

随便看看