实验1 SQL基础1主要涉及了SQL语言的基本操作,包括创建数据库和表、向表中输入数据以及使用SELECT语句进行数据查询。以下是这些知识点的详细解释: 1. 创建数据库和表: - 使用CREATE DATABASE语句创建数据库。例如,创建名为SC的数据库,通过SQL Server Management Studio中的"新建查询",输入`CREATE DATABASE SC`,然后执行命令。 - 在选定的数据库(如SC)中,使用CREATE TABLE语句创建表。例如,创建Student、Course和SC三个表,定义各个字段的数据类型和约束,如`NOT NULL`和`UNIQUE`。 2. 向表中输入数据: - 利用SQL Server Management Studio的“企业管理器”功能,选择要编辑的表,右键选择“编辑前200行”,在表格中直接输入数据。这通常用于快速输入少量测试数据。 3. 使用SELECT语句进行数据查询: - **简单查询**:查询特定列或所有列。例如,查询所有学生的姓名、学号和所在系,使用`SELECT sno, sname, sdept FROM Student`;查询所有记录,使用`SELECT * FROM Student`。 - **聚合查询**:使用`DISTINCT`去除重复值。例如,查询学校所有不同的系,使用`SELECT DISTINCT sdept FROM student`。 - **条件查询**:根据条件筛选数据。例如,查询计算机系学生的学号和姓名,使用`SELECT sno, sname FROM Student WHERE sdept = '计算机系'`;查询选修一号课程且成绩90分以上的学生学号,使用`SELECT sno FROM SC WHERE grade > 90`。 - **连接查询**: - **等值连接**:连接多个表,基于一个或多个字段的等值匹配。例如,查询每个学生及其选修课程,使用`SELECT * FROM Student LEFT JOIN SC ON Student.sno = SC.sno`。 - **非等值连接**和**复合条件查询**:结合多个条件进行连接。例如,查询每个学生的学号、姓名、选修的课程名及成绩,使用`SELECT Student.sno, sname, cname, grade FROM Student, Course, SC WHERE Student.sno = SC.sno AND Course.cno = SC.cno`。 - **自身连接**:将同一表与其他自身进行连接。例如,查询和张明在同一个系的其他学生,使用`SELECT b.sno, b.sname FROM Student a INNER JOIN Student b ON a.sdept = b.sdept AND a.sname = '张明' AND b.sname <> '张明'`。 - **嵌套查询**:在查询中使用子查询。例如,查询与“张明”同系的学生,使用`SELECT sno, sname FROM Student WHERE sdept IN (SELECT sdept FROM Student WHERE sname = '张明')`;查询选修了信息系统的学生学号和姓名,使用`SELECT sno, sname FROM Student WHERE sno IN (SELECT sno FROM SC WHERE cno IN (SELECT cno FROM Course WHERE cname = '信息系统'))`。 这个实验是SQL初学者的基础练习,旨在帮助学习者掌握SQL的基本语法和常用查询操作,为进一步学习和实际应用打下基础。通过这些操作,可以实现对数据库的创建、数据的插入和查询,以及不同表之间的数据关联。
剩余12页未读,继续阅读
- 粉丝: 803
- 资源: 298
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- java毕业设计-基于SSM框架的传统服饰文化体验平台【代码+部署教程】
- 优化领域的模拟退火算法详解与实战
- NewFileTime-x64.zip.fgpg
- 基于Python和HTML的Chinese-estate-helper房地产爬虫及可视化设计源码
- 基于SpringBoot2.7.7的当当书城Java后端设计源码
- 基于Python和Go语言的开发工具集成与验证设计源码
- 基于Python与JavaScript的国内供应商管理系统设计源码
- aspose.words-20.12-jdk17
- 基于czsc库的Python时间序列分析设计源码
- 基于Java、CSS、JavaScript、HTML的跨语言智联平台设计源码
评论0