oracle数据库的练习题,Oracle数据库练习题
时间: 2024-01-08 09:02:29 浏览: 33
好的,我可以为您提供一些 Oracle 数据库的练习题。以下是一些例子:
1. 创建一个名为 `employees` 的表,包含 `id`、`name`、`age`、`gender` 和 `salary` 字段,其中 `id` 是主键。
2. 插入一些数据到 `employees` 表中,确保每个字段都有数据。
3. 编写一个查询,找出 `salary` 最高的员工的名字和工资。
4. 编写一个查询,找出年龄最小的女性员工的名字和年龄。
5. 编写一个查询,找出工资大于 5000 的员工的名字、年龄和工资。
希望这些练习题能帮助您提高 Oracle 数据库的技能。如果您需要更多帮助,请告诉我。
相关问题
oracle数据库练习题
以下为Oracle数据库练习题的答案:
6. 查询同时学过课程1和课程2的同学的学号和姓名:
```
SELECT g.sno AS "学号", g.sname AS "姓名"
FROM student g,
(SELECT * FROM sc WHERE cno = 1) t
WHERE t.sno IN (SELECT sno FROM sc WHERE cno = 2)
AND g.sno = t.sno;
```
该查询使用了子查询和多表连接,首先在子查询中选择了选修了课程1的学生的学号,然后通过连接操作找到同时选修了课程2的学生,并返回他们的学号和姓名。
7. 查询学过“李丁”老师所教的所有课程的所有同学的学号和姓名:
```
SELECT sno AS "学号", sname AS "姓名"
FROM student
WHERE sno IN (
SELECT p.sno
FROM (SELECT * FROM sc WHERE cno = 4) p,
(SELECT * FROM sc WHERE cno = 5) k
WHERE p.sno = k.sno
);
```
该查询使用了子查询和多表连接,在子查询中先选择了李丁老师所教的课程4的学生的学号,然后通过连接操作找到同时学习了课程5的学生,并返回他们的学号和姓名。
3. 查询所有同学的学号、姓名、选课数、总成绩:
```
SELECT z."学号", g.sname AS "姓名", z."选课数", z."总分数"
FROM (
SELECT s.sno AS "学号", COUNT(s.cno) AS "选课数", SUM(s.grade) AS "总分数"
FROM course c, sc s
WHERE c.cno = s.cno
GROUP BY s.sno
ORDER BY "总分数" DESC
) z, student g
WHERE z."学号" = g.sno;
```
该查询使用了子查询和表连接,首先在子查询中计算了每个学生的选课数和总成绩,并按照总成绩降序排序,然后通过连接操作将学生的学号、姓名、选课数和总成绩与student表连接起来,并返回结果。
以上是关于Oracle数据库练习题的答案。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [Oracle数据库练习题](https://blog.csdn.net/WhenTheWindBlows/article/details/89403828)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
oracle数据库练习题笔试
好的,我可以为您提供几道Oracle数据库练习题,希望对您有帮助:
1. 创建一个名为"employees"的表,包含以下列:员工编号(emp_id)、员工姓名(emp_name)、薪水(salary)、雇佣日期(hire_date)。其中,员工编号为主键,薪水为数字类型,雇佣日期为日期类型。
2. 向"employees"表中插入一条记录,员工编号为"1001",员工姓名为"张三",薪水为"5000",雇佣日期为"2020-01-01"。
3. 查询"employees"表中所有员工的姓名和薪水。
4. 查询"employees"表中薪水在"4000"到"6000"之间的员工信息。
5. 将"employees"表中员工编号为"1001"的薪水修改为"6000"。
6. 删除"employees"表中员工编号为"1001"的记录。
希望这些题目能够帮助您巩固Oracle数据库的知识。如果您还有其他问题或需求,可以随时向我提出。