数据库sql练习题
数据库的sql语句练习题

数据库的sql语句练习题数据库的SQL语句练习题数据库是计算机领域中非常重要的一部分,它用于存储和管理大量的数据。
而SQL(Structured Query Language)则是用于操作数据库的标准语言。
掌握SQL 语句的使用对于数据库的管理和查询至关重要。
下面将给出一些SQL语句的练习题,帮助读者巩固和提升SQL的应用能力。
1. 创建表格假设我们需要创建一个学生表格,其中包含学生的学号、姓名、年龄和性别等字段。
请写出创建该表格的SQL语句。
```CREATE TABLE students (student_id INT PRIMARY KEY,name VARCHAR(50),age INT,gender VARCHAR(10));```2. 插入数据现在我们已经创建了学生表格,接下来需要往表格中插入一些数据。
请写出插入两条学生记录的SQL语句。
```INSERT INTO students (student_id, name, age, gender)VALUES (1, '张三', 20, '男');INSERT INTO students (student_id, name, age, gender)VALUES (2, '李四', 22, '女');```3. 更新数据假设学生张三的年龄发生了变化,需要将其年龄更新为21岁。
请写出更新该学生记录的SQL语句。
```UPDATE studentsSET age = 21WHERE student_id = 1;```4. 删除数据假设学生李四已经毕业离校,需要从学生表格中删除其记录。
请写出删除该学生记录的SQL语句。
```DELETE FROM studentsWHERE student_id = 2;```5. 查询数据现在我们已经创建了学生表格并插入了一些数据,接下来需要进行一些查询操作。
数据库SQL语句练习题含答案

SQL语句练习练习5. 1. 2: 基于不断滚动的电影数据库的实例:Movie( 电影名title,拍摄年代year ,长度length, inColor ,制片厂名studioName, 制片人证书号producerC# )StarsIn(电影名movieTitle,拍摄年份movieYear ,影星名starName) MovieStar (姓名name,地址address,性别gender ,生日birthdate) MovieExec( 姓名name,地址address ,证书号cert # ,净资产netWorth ) Studio(姓名name, 地址address,总裁证书号presC# )请写出下列SQL 查询语句:* ( a) 找出米高梅制片公司(MGM studios)的地址。
SELECT address AS Studio_AddressFROM Studio WHERE name = 'MGM';( b) 找出桑德拉·布洛克( Sandra Bullock ) 的出生日期( birthdate) 。
SELECT birthdate AS Star_BirthdateFROM MovieStar WHERE name = 'Sandra Bullock';* ( c) 找出在1980 年拍摄过电影的所有影星, 或者拍摄过电影名中含有“Love”的电影的所有影星。
SELECT starName FROM StarsInWHERE movieYear = 1980 OR movieTitle LIKE '%Love%';( d) 找出净资产至少1 000 万美元的所有行政长官。
SELECT name AS Exec_NameFROM MovieExec WHERE netWorth >= 10000000;( e) 找出所有的男影星或者是住址中含有Malibu 的影星。
SQL练习题,非题库

SQL练习题,非题库选择题1. 取出关系中的某些列,并消去重复的元组的关系运算称为(投影运算)。
2. 在学生数据库中,用SQL语句列出所有女生的姓名,应该对学生关系进行(选择和投影)操作。
3. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是(多对一)。
4. 在一个关系中,不能有相同的(属性)。
5. (数据库管理系统)是位于用户与操作系统之间的一层数据管理软件。
6. 数据库系统不仅包括数据库本身,还要包括相应的硬件,软件和(各类相关人员)。
7. SQL语言属于(据有关系代数和关系演算双重特点的语言)。
8. SQL Server采用的体系结构是(单进程、多线程)。
9. SQL语言是(结构化查询语言)。
10.SQL语言最主要功能是(数据查询)。
11.SQL Server2005在安装之前,应注意的事项是(SQL Server2005在安装之前,必须在操作系统级启用TCP/IP)。
12.下列关于身份验证模式叙述正确的是(只有Windows的当前用户才可选择Windows身份验证模式)。
13.在连接SQL Server时需要提供用户名和密码的身份验证模式是(SQL Server身份验证)。
14.在连接到数据库引擎时,有两种连接认证方式,其中在(SQL Server身份验证)方式下,需要客户端提供登录时需要的用户名和密码。
15.下列(pubs)不是SQL Server2005的系统数据库。
16.关于数据库事务日志文件叙述错误的是(如果未指定事务日志文件的增长量,则文件大小保持不变)。
17.每个数据库有且只能有一个(主数据文件)。
18.下面(队列、约束)不是SQL Server2005数据库对象。
19.如果数据库中的数据量非常大,除了将数据存储在主数据文件中,还可以将一部分数据存储在(次数据文件)。
20.用以交互地设计和测试T-SQL语句的是(查询命令窗口)。
数据库sql查询语句练习4_习题_结果(单世民)图书_习题

数据库sql查询语句练习4_习题_结果(单世民)图书_习题现有图书管理数据库的三个关系模式:图书(总编号, 分类号, 书名, 作者, 出版单位, 单价)读者(借书证号, 单位, 姓名, 性别, 职称, 地址)借阅(借书证号, 总编号, 借书⽇期)具体数据为:读者:根据以上描述,请完成:DDL1.写出创建上述表的语句命令:create table图书(总编号varchar(7)primary key,分类号varchar(8),书名varchar(18),作者varchar(8),出版单位varchar(18),单价float)create table读者(借书证号varchar(4)primary key,单位varchar(7),姓名varchar(8),性别varchar(2),职称varchar(8),地址varchar(18))create table借阅(借书证号varchar(3),总编号varchar(6),借书⽇期date,primary key(借书证号,总编号,借书⽇期))DML2.给出插⼊上述数据的insert语句命令:insert into图书values('445501','TP3/12','数据库导论','王强','科学出版社', insert into图书values('445502','TP3/12','数据库导论','王强','科学出版社', insert into图书values('445503','TP3/12','数据库导论','王强','科学出版社', insert into图书values('332211','TP5/10','计算机基础','李伟','⾼等教育出版社', insert into图书values('112266','TP3/12','FoxBASE','张三','电⼦⼯业出版社', insert into图书values('665544','TS7/21','⾼等数学','刘明','⾼等教育出版社', insert into图书values('114455','TR9/12','线性代数','孙业','北京⼤学出版社', insert into图书values('113388','TR7/90','⼤学英语','胡玲','清华⼤学出版社', insert into图书values('446601','TP4/13','数据库基础','马凌云','⼈民邮电出版社',insert into图书values('446602','TP4/13','数据库基础','马凌云','⼈民邮电出版社',insert into图书values('446603','TP4/13','数据库基础','马凌云','⼈民邮电出版社',insert into图书values('449901','TP4/14','FoxPro⼤全','周虹','科学出版社', insert into图书values('449902','TP4/14','FoxPro⼤全','周虹','科学出版社', insert into图书values('118801','TP4/15','计算机⽹络','黄⼒钧','⾼等教育出版社',insert into图书values('118802','TP4/15','计算机⽹络','黄⼒钧','⾼等教育出版社',insert into读者values('111','信息系','王维利','⼥','教授','1号楼')insert into读者values('112','财会系','李⽴','男','副教授','2号楼')insert into读者values('113','经济系','张三','男','讲师','3号楼')insert into读者values('114','信息系','周华发','男','讲师','1号楼')insert into读者values('115','信息系','赵正义','男','⼯程师','1号楼')insert into读者values('116','信息系','李明','男','副教授','1号楼')insert into读者values('117','计算机系','李⼩峰','男','助教','1号楼')insert into读者values('118','计算机系','许鹏飞','男','教授','1号楼')insert into读者values('119','计算机系','刘⼤龙','男','副教授','4号楼') insert into读者values('120','国际贸易','李雪','男','副教授','4号楼') insert into读者values('121','国际贸易','李爽','⼥','讲师','4号楼') insert into读者values('122','国际贸易','王纯','⼥','讲师','4号楼') insert into读者values('123','财会系','沈⼩霞','⼥','助教','2号楼') insert into读者values('124','财会系','朱海','男','讲师','2号楼')insert into读者values('125','财会系','马英明','男','副教授','2号楼')insert into借阅values('112','445501','1997-3-19')insert into借阅values('125','332211','1997-2-12')insert into借阅values('111','445503','1997-8-21')insert into借阅values('112','112266','1997-3-14')insert into借阅values('114','665544','1997-10-21')insert into借阅values('120','114455','1997-11-2')insert into借阅values('120','118801','1997-10-18')insert into借阅values('119','446603','1997-12-12')insert into借阅values('112','449901','1997-10-23')insert into借阅values('115','449902','1997-8-21')insert into借阅values('118','118801','1997-9-10')单表查询3.找出姓李的读者姓名和所在单位命令:select姓名,单位from读者where姓名like'李%'结果:4.列出图书库中所有藏书的书名以及出版单位命令:select distinct书名,出版单位from图书结果:5.查找出⾼等教育出版社的所有图书及单价,结果按单价降序排列命令:select distinct书名,单价from图书where出版单位='⾼等教育出版社' order by单价desc结果:6.查找出价格位于10元和20元之间的图书种类,结果按出版单位和单价升序排序命令:select*from图书where单价between 10 and 20 order by出版单位,单价结果:7.找出书名以“计算机”打头的所有图书和作者命令:select distinct书名,作者from图书where书名like'计算机%'结果:8.检索同时接借阅了总编号为112266和449901两本书的借书证号命令:select借书证号from借阅where总编号='112266'intersect select借书证号from借阅where总编号='449901'结果:9.求科学出版社图书的最⾼单价、最低单价和平均单价命令:select MAX(单价)最⾼单价,MIN(单价)最低单价,AVG(单价)平均单价from 图书where出版单位='科学出版社'结果:聚合查询10.找出藏书中各个出版社的册数、价值总额命令:select出版单位,COUNT(*)册数,SUM(单价)价值总额from图书group by 出版单位结果:11.求出各个出版社图书的最⾼价格、最低价格和册数命令:select出版单位,COUNT(*)册数,max(单价)最⾼价格,MIN(单价)最低价格from图书group by出版单位结果:多表查询12.查找所有借了书的读者的姓名以及所在单位命令:select distinct姓名,单位from读者join借阅on读者.借书证号=借阅.借书证号结果:13.找出李某所借图书的所有图书的书名及借书⽇期命令:select姓名,书名,借书⽇期from读者join借阅on读者.借书证号=借阅.借书证号join图书on借阅.总编号=图书.总编号where 姓名like'李%'结果:14.查询1997年10⽉以后借书的读者借书证号、姓名和单位命令:select distinct读者.借书证号,姓名,单位from借阅join读者on借阅.借书证号=读者.借书证号whereDATEDIFF(MONTH,'1977-10-1',借书⽇期)>=0结果:15.找出借阅了FoxPro⼤全⼀书的借书证号命令:select借书证号from借阅join图书on借阅.总编号=图书.总编号where 书名='FoxPro⼤全'结果:16.分别找出借书⼈次超过1⼈次的单位及⼈次数命令:select单位,COUNT(*)⼈次数from借阅join读者on借阅.借书证号=读者.借书证号group by单位having COUNT(*)>1结果:⼦查询17.找出与赵正义在同⼀天借书的读者姓名、所在单位以及借书⽇期命令:select姓名,单位,借书⽇期from读者join借阅on读者.借书证号=借阅.借书证号where借书⽇期=(select借书⽇期from借阅join读者on借阅.借书证号=读者.借书证号where姓名='赵正义')结果:18.查询1997年7⽉以后没有借书的读者借书证号、姓名以及单位命令:select借书证号,姓名,单位from读者except select借阅.借书证号,姓名,单位from借阅join读者on借阅.借书证号=读者.借书证号where DATEDIFF(DAY,'1997-7-1',借书⽇期)>=0结果:19.求信息系当前借阅图书的读者⼈次数命令:select COUNT(*)⼈次数from借阅join读者on借阅.借书证号=读者.借书证号where单位='信息系'结果:20.找出当前⾄少借阅了2本书的读者及所在单位命令:select姓名,单位from借阅join读者on借阅.借书证号=读者.借书证号group by读者.姓名,单位having COUNT(*)>=2结果:21.查询经济系是否还清所有图书。
sql数据库练习题

第一讲1、什么是数据管理?答:对数据进行分类、组织、编码、存储、检索和维护,是数据处理的中心问题。
2、在数据库的三个模式中( C )。
A.内模式只有一个,而模式和外模式可以有多个B.模式只有一个,而模式和外模式可以有多个C.模式和内模式只有一个,而外模式可以有多个D.模式、内模式和外模式均只有一个3、学生社团可以接纳多名学生参加,但每个学生只能参加一个社团,从社团到学生之间的联系类型是( D )A.多对多B.一对一C.多对一D.一对多4、储蓄所有多个储户,一个储户可以在多个储蓄所存取款,储蓄所和储户之间的联系类型是:AA.多对多B.一对一C.多对一D.一对多5、学生、系、系与学生之间的一对多联系:学生(学号,姓名,年龄,性别,系号,年级)系(系号,系名,办公地点)6、系、系主任、系与系主任间的一对一联系联系隐含在关系内部:系(系号,系名,办公地点)系主任(教师编号,姓名,年龄,性别,所在系号)第四讲1、什么是关系数据库?答:关系数据库(P18):所谓关系数据库就是采用关系模型作为数据的组织方式,换名话说就是支持关系模型的数据库系统。
2、关系数据的操作语言有哪几类,分别是什么?答:(1)、关系代数(2)、关系演算(3)、SQL语言3、关系数据的完整性约束分别是什么?答:(1)、实体完整性(2)、参照完整性(3)、用户定义完整性4、什么是码及候选码?并找出下述关系中的候选码。
答:(1)、码(P20):在关系的各个属性中,能够用来惟一标识一个元组的属性或属性组。
(2)、候选码(P20):若在一个关系中,某一个属性或属性组的值能唯一地标识该关系的元组,而真子集不行,则称该属性或属性组为候选码。
(3)、该关系的候选码为:职工编号,身份证号。
5、关系数据操作的对象和结果都是什么?答:集合6、给出三个域:D1=SUPERVISOR ={ 张清玫,刘逸}D2=SPECIALITY={计算机专业,信息专业}D3=POSTGRADUATE={李勇,刘晨,王敏}则D1,D2,D3的笛卡尔积为:D1×D2×D3 ={(张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨),(张清玫,计算机专业,王敏),(张清玫,信息专业,李勇),(张清玫,信息专业,刘晨),(张清玫,信息专业,王敏),(刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨),(刘逸,计算机专业,王敏),(刘逸,信息专业,李勇),(刘逸,信息专业,刘晨),(刘逸,信息专业,王敏) }7、现有关系表:学生(宿舍编号,宿舍地址,学号,姓名,性别,专业)的主键为:BA宿舍编号B学号C宿舍地址,姓名D宿舍编号,学号8、现有关系表:医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果,恢复情况)的主键是:AA患者编号,医生编号,诊断日期B医生编号C诊断日期D患者编号9、现有如下关系:职工(职工号、姓名、性别、职务、部门编号)部门(部门编号、部门名称、姓名、部门地址、电话)其中,职工关系中的外键是(A)A部门编号B姓名C职工号D职工号,姓名10、关系数据库(实体完整性规则)规定元组在组成主码的属性上不能取空值。
数据库的sql语句练习题

数据库的sql语句练习题1. 练习题一:查询语句基础在学生表(students)中,包含以下字段:学号(id)、姓名(name)、年龄(age)、性别(gender)、班级(class)、成绩(score)。
请编写SQL语句实现以下需求:a) 查询学生表中所有学生的信息。
b) 查询学生表中的男性学生信息。
c) 查询学生表中年龄为18岁的学生信息。
d) 查询学生表中成绩大于等于90分的学生信息。
e) 查询学生表中姓“张”的学生信息。
2. 练习题二:修改语句练习在学生表(students)中,某个学生的学号为1001,需要将该学生的年龄修改为20岁,请编写相应的SQL语句实现此操作。
3. 练习题三:插入语句练习在学生表(students)中添加一条新纪录,学号为1002,姓名为李明,年龄为19岁,性别为男,班级为三年级,成绩为87分,请编写相应的SQL语句实现此操作。
4. 练习题四:删除语句练习在学生表(students)中,某个学生的学号为1003,需要将该学生的信息从表中删除,请编写相应的SQL语句实现此操作。
5. 练习题五:使用多表查询存在两张表,学生表(students)和课程表(courses)。
学生表包含字段:学号(id)、姓名(name)、班级(class);课程表包含字段:课程编号(course_id)、课程名称(course_name)。
已知约德尔学院中,学号为1001的学生参加了编号为1的课程,请编写SQL语句查询学号为1001的学生所选的课程及课程名称。
6. 练习题六:排序查询练习在学生表(students)中,查询所有学生的信息,并按照成绩从高到低进行排序。
以上是数据库的SQL语句练习题,请按照上述要求编写相应的SQL语句进行解答。
祝你练习愉快,取得好成绩!。
SQL数据库考试试题

1SQL数据库试题一、单项选择题(每小题1分,共10分)1.下列四项中,不属于数据库特点的是( C )。
A.数据共享B.数据完整性C.数据冗余很高D.数据独立性高2.下列四项中,不属于SQL2000实用程序的是( D )。
A.企业管理器B.查询分析器C.服务管理器D.媒体播放器3.SQL Server安装程序创建4个系统数据库,下列哪个不是( C )系统数据库。
A.masterB.modelC.pubD.msdb4.( A )是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法。
数据库在建立、使用和维护时由其统一管理、统一控制。
A.DBMS B.DBC.DBS D.DBA5. 在SQL中,建立表用的命令是 ( B )。
A.CREATE SCHEMAB.CREATE TABLEC.CREATE VIEWD.CREATE INDEX6.SQL语言中,条件年龄 BETWEEN 15 AND 35表示年龄在15至35之间,且( A )。
A.包括15岁和35岁B.不包括15岁和35岁C.包括15岁但不包括35岁D.包括35岁但不包括15岁7.下列四项中,不正确的提法是( C )。
2A.SQL语言是关系数据库的国际标准语言B.SQL语言具有数据定义、查询、操纵和控制功能C.SQL语言可以自动实现关系数据库的规范化D.SQL语言称为结构查询语言8.在MS SQL Server中,用来显示数据库信息的系统存储过程是( D )。
A.sp_dbhelpB. sp_dbC. sp_helpD. sp_helpdb9.SQL语言中,删除表中数据的命令是( A )。
A.DELETEB. DROPC. CLEARD. REMOVE10.SQL的视图是从( C )中导出的。
A.基本表B. 视图C. 基本表或视图D. 数据库SQL数据库试题2一、单项选择题(每小题1分,共10分)4. 下列哪个不是sql 数据库文件的后缀。
数据库SQL练习题

数据库应用(SQL Server)练习题一题:单选1. 在Transact-SQL中,下列命令能让程序完全跳出循环的是( C )。
(A) CASE (B) WAIT (C) BREAK (D) CONTINUE2. 在SQL SERVER 2008中,不能恢复的操作是( D )。
(A) DELETE (B) UPDATE (C) INSERT (D) TRUNCATE TABLE3. 在SQL SERVER 2008中,默认的事务隔离级别是(A )。
(A) READ COMMITTED (B) READ UNCOMMITTED (C) REPEATABLE READ (D) SERIALIZABLE4. 当对关系R和S使用自然联接时,一般要求R和S至少含有一个共同的(D )。
(A) 元组(B) 关键字(C) 记录(D) 属性5. 若关系模式R(A,B,C,D,E)上的函数依赖集F={AB->C,A->D,A->E},为了满足BCNF,可以将R分解为( B )。
(A) R1(A,B,C,D) R2(A,E) (B) R1(A,B,C) R2(A,D,E)(C) R1(A,B,C) R2(D,E) (D) R1(A,B) R2(A,C,D,E)6. SQL语言查询一次的结果是一个(B )。
(A) 元组(B) 表(C) 属性(D) 数据库7. 在关系模式R(U,F)中,如果X→Y,且存在X的真子集X1,使X1→Y,则称函数依赖X→Y为(B )。
(A) 平凡函数依赖(B) 部分函数依赖(C) 完全函数依赖(D) 传递函数依赖8. 如果删除表中的数据,而不删除表,应使用的选项是(A )。
(A) DELETE (B) DROP (C) UNION (D) REMOVE9. 下列关于DELETE语句的说法中错误的是(D )。
(A) DELETE语句可以删除一行数据(B) DELETE语句可以删除表中所有数据(C) DELETE语句可以带有子查询(D) DELETE语句可以删除多个表中的数据10. 下列选项中,可以正确表达姓“张”的通配符是(B )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
use test/*问题及描述:--1.学生表Student(S#,Sname,Sage,Ssex) --S# 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别--2.课程表Course(C#,Cname,T#) --C# --课程编号,Cname 课程名称,T# 教师编号--3.教师表Teacher(T#,Tname) --T# 教师编号,Tname 教师姓名--4.成绩表SC(S#,C#,score) --S# 学生编号,C# 课程编号,score 分数select * from Studentselect * from Courseselect * from Teacherselect * from SC*/--创建测试数据create table Student(S# varchar(10),Sname nvarchar(10),Sage datetime,Ssex nvarchar(10)) insert into Student values('01', N'赵雷','1990-01-01', N'男')insert into Student values('02', N'钱电','1990-12-21', N'男')insert into Student values('03', N'孙风','1990-05-20', N'男')insert into Student values('04', N'李云','1990-08-06', N'男')insert into Student values('05', N'周梅','1991-12-01', N'女')insert into Student values('06', N'吴兰','1992-03-01', N'女')insert into Student values('07', N'郑竹','1989-07-01', N'女')insert into Student values('08', N'王菊','1990-01-20', N'女')create table Course(C# varchar(10),Cname nvarchar(10),T# varchar(10))insert into Course values('01', N'语文','02')insert into Course values('02', N'数学','01')insert into Course values('03', N'英语','03')create table Teacher(T# varchar(10),Tname nvarchar(10))insert into Teacher values('01', N'张三')insert into Teacher values('02', N'李四')insert into Teacher values('03', N'王五')create table SC(S# varchar(10),C# varchar(10),score decimal(18,1))insert into SC values('01','01', 80)insert into SC values('01','02', 90)insert into SC values('01','03', 99)insert into SC values('02','01', 70)insert into SC values('02','02', 60)insert into SC values('02','03', 80)insert into SC values('03','01', 80)insert into SC values('03','02', 80)insert into SC values('03','03', 80)insert into SC values('04','01', 50)insert into SC values('04','02', 30)insert into SC values('04','03', 20)insert into SC values('05','01', 76)insert into SC values('05','02', 87)insert into SC values('06','01', 31)insert into SC values('06','03', 34)insert into SC values('07','02', 89)insert into SC values('07','03', 98)go--1、查询"01"课程比"02"课程成绩高的学生的信息及课程分数--1.1、查询同时存在"01"课程和"02"课程的情况select a.*, b.score [课程'01'的分数],c.score [课程'02'的分数] from Student a , SC b , SC c where a.S# = b.S# and a.S# = c.S# and b.C# ='01'and c.C# ='02'and b.score > c.score--1.2、查询同时存在"01"课程和"02"课程的情况和存在"01"课程但可能不存在"02"课程的情况(不存在时显示为null)(以下存在相同内容时不再解释)select a.*, b.score [课程"01"的分数],c.score [课程"02"的分数] from Student aleft join SC b on a.S# = b.S# and b.C# ='01'left join SC c on a.S# = c.S# and c.C# ='02'where b.score >isnull(c.score,0)--2、查询"01"课程比"02"课程成绩低的学生的信息及课程分数--2.1、查询同时存在"01"课程和"02"课程的情况select a.*, b.score [课程'01'的分数],c.score [课程'02'的分数] from Student a , SC b , SC c where a.S# = b.S# and a.S# = c.S# and b.C# ='01'and c.C# ='02'and b.score < c.score--2.2、查询同时存在"01"课程和"02"课程的情况和不存在"01"课程但存在"02"课程的情况select a.*, b.score [课程"01"的分数],c.score [课程"02"的分数] from Student aleft join SC b on a.S# = b.S# and b.C# ='01'left join SC c on a.S# = c.S# and c.C# ='02'where isnull(b.score,0)< c.score--3、查询平均成绩大于等于分的同学的学生编号和学生姓名和平均成绩select a.S# , a.Sname ,cast(avg(b.score)as decimal(18,2)) avg_scorefrom Student a , sc bwhere a.S# = b.S#group by a.S# , a.Snamehaving cast(avg(b.score)as decimal(18,2))>= 60order by a.S#--4、查询平均成绩小于分的同学的学生编号和学生姓名和平均成绩--4.1、查询在sc表存在成绩的学生信息的SQL语句。
select a.S# , a.Sname ,cast(avg(b.score)as decimal(18,2)) avg_scorefrom Student a , sc bwhere a.S# = b.S#group by a.S# , a.Snamehaving cast(avg(b.score)as decimal(18,2))< 60order by a.S#--4.2、查询在sc表中不存在成绩的学生信息的SQL语句。
select a.S# , a.Sname ,isnull(cast(avg(b.score)as decimal(18,2)),0) avg_scorefrom Student a left join sc bon a.S# = b.S#group by a.S# , a.Snamehaving isnull(cast(avg(b.score)as decimal(18,2)),0)< 60order by a.S#--5、查询所有同学的学生编号、学生姓名、选课总数、所有课程的总成绩--5.1、查询所有有成绩的SQL。