SQL查询:学生信息与课程管理
需积分: 0 91 浏览量
更新于2024-08-04
收藏 54KB DOCX 举报
"该资源是关于学生数据库的操作,包括对学生表和课程表的查询以及创建临时表的操作。学生表有sid(学号)、stuname(姓名)、birthday(生日)、sex(性别)和remark(备注)字段,课程表有cid(课程ID)、cname(课程名)和tid(教师ID)字段。提供了部分模拟数据,如刘备、关羽等学生的信息和Java程序设计、Oracle数据库管理等课程的信息。"
以下是对给定任务的详细解答:
1. **查询院系名称为空的学生的学号、姓名**
在这个学生数据库中,院系名称并没有作为字段包含在`student`表中,所以查询院系名称为空的结果将始终为空。如果院系信息存在其他表中并与`student`表有关联,我们需要使用JOIN操作来查询。但根据提供的表结构,无法完成此查询。
2. **查询名字中第2个字为“阳”字的学生姓名和学号**
要查询名字中第二个字为“阳”的学生,我们可以使用SQL的SUBSTR函数配合位置索引来实现。如下所示:
```sql
SELECT sid, stuname
FROM student
WHERE SUBSTR(stuname, 2, 1) = '阳';
```
这条查询将返回所有姓名第二个字符是“阳”的学生的学号和姓名。
3. **创建course_tmp表,结构与course表相同,但不插入数据**
创建一个与`course`表结构相同的临时表`course_tmp`,可以使用如下SQL语句:
```sql
CREATE TABLE course_tmp AS SELECT * FROM course WHERE 1=2;
```
这条语句创建了一个名为`course_tmp`的新表,其结构与`course`表完全相同,但由于WHERE子句`1=2`总是假,所以没有数据被插入。
4. **对课程表进行操作**
由于没有具体的操作要求,这里提供一些可能的查询或操作示例:
- 查询所有课程信息:
```sql
SELECT * FROM course;
```
- 查找由教师"T001"教授的所有课程:
```sql
SELECT * FROM course WHERE tid = 'T001';
```
以上是基于给定信息进行的数据库操作解析。在实际数据库设计中,通常会包括更多的字段和更复杂的关联,以便更好地管理和分析数据。在这个例子中,我们只处理了基本的查询和表创建,而没有涉及到复杂的数据库设计和优化。
2012-12-30 上传
2021-11-24 上传
2021-11-03 上传
小崔个人精进录
- 粉丝: 39
- 资源: 316
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载