sql试题12
最全SQL数据库试题-整理
一、单项选择题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 )。
A.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. 数据库11. 下列哪个不是sql 数据库文件的后缀。
CA..mdf B..ldfC..tif D..ndf12. 数据定义语言的缩写词为( A )。
sql考试题及答案
sql考试题及答案SQL考试题及答案一、选择题(每题2分,共20分)1. 下列哪个SQL语句用于查询数据?A. SELECTB. INSERTC. UPDATED. DELETE答案:A2. 以下哪个SQL语句用于删除表中的数据?A. DROP TABLEB. DELETE FROMC. TRUNCATE TABLED. ALTER TABLE答案:B3. SQL中的主键约束是什么?A. UNIQUEB. PRIMARY KEYC. FOREIGN KEYD. CHECK答案:B4. 以下哪个函数用于计算字符串的长度?A. CONCAT()B. SUBSTRING()C. LENGTH()D. UPPER()答案:C5. 以下哪个语句用于添加新的数据表?A. CREATE DATABASEB. CREATE TABLEC. ALTER TABLED. DROP TABLE答案:B6. SQL中的LIKE语句用于什么?A. 排序B. 条件搜索C. 聚合数据D. 连接表答案:B7. 以下哪个语句用于修改表结构?A. CREATE TABLEB. ALTER TABLEC. DROP TABLED. TRUNCATE TABLE答案:B8. SQL中的GROUP BY语句用于什么?A. 排序结果B. 聚合数据C. 过滤数据D. 连接表答案:B9. 以下哪个语句用于删除数据库?A. DROP TABLEB. DROP DATABASEC. DELETE FROMD. TRUNCATE TABLE答案:B10. SQL中的INNER JOIN用于什么?A. 内连接B. 外连接C. 全连接D. 交叉连接答案:A二、填空题(每空2分,共20分)1. SQL中的______语句用于插入数据到表中。
答案:INSERT INTO2. 要查询所有列,可以使用SQL中的______关键字。
答案:*3. SQL中的______语句用于删除表。
sql测试题带 答案
01、mybatis案例-需求分析02、mybatis案例-环境准备03、查询-查询所有04、查询-结果映射【多选题】关于实体类属性名和数据库表列名不一致情况,下列解决方案正确的有(CD)A、定义SQL时,结果集使用别名可以解决上述问题,但是复用性强。
B、如果有<ResultMap id="baseResultMap" type="com.itheima.pojo.Brand">,那么<select id="selectAll" resultType="baseResultMap">可以解决上述问题C、如果有<ResultMap id="baseResultMap" type="com.itheima.pojo.Brand">,那么<select id="selectAll" resultMap="baseResultMap">可以解决上述问题D、可以在Mybatis核心配置文件中开启驼峰命名的方式解决上述问题。
05、查询-查询详情【多选题】关于参数占位符和参数类型说法正确的有(AD)A、在标签中使用parameterType属性指定参数类型,也可以省略不写。
B、在标签中使用parameterType属性指定参数类型,必须要写。
C、#{}和${}都可以作为参数的占位符,它们之间没有区别。
D、#{}作为参数的占位符,执行SQL时,会将#{}占位符替换为?防止SQL注入漏洞,而使用${}作为参数占位符不会。
06、添加-添加品牌07、添加-添加后返回自增主键【多选题】下列哪些需求需要使用添加后的自增主键(BC)A、小李在京东上架了一款商品,添加完商品之后需要返回自增的主键。
B、小李在京东提交了一个订单,添加订单信息需要返回自增主键,因为在后续添加订单项时要使用到刚刚的订单id。
sql考试题及答案
sql考试题及答案一、选择题1. SQL是什么意思?a. Structured Query Languageb. Sequential Query Languagec. Structured Question Languaged. Sequential Question Language答案:a. Structured Query Language2. 下列哪个关键词用于在SQL中创建新表?a. UPDATEb. INSERTc. CREATEd. SELECT答案:c. CREATE3. 在SQL中,用于查找符合一定条件的记录的关键词是?a. SELECTb. UPDATEc. INSERTd. DELETE答案:a. SELECT4. 在SQL中,如何在表中添加新的数据?a. INSERT INTOb. ADD INTOc. UPDATEd. MODIFY答案:a. INSERT INTO5. 在SQL中,如何删除表中的数据?a. DELETE ROWb. REMOVEc. DELETE FROMd. ERASE FROM答案:c. DELETE FROM二、填空题1. SQL中用于选择所有列的通配符是______。
答案:*2. SQL中用于指定唯一键的关键词是______。
答案:PRIMARY KEY3. SQL中用于按照某一列对结果进行排序的关键词是______。
答案:ORDER BY4. SQL中用于更新数据的关键词是______。
答案:UPDATE5. SQL中用于计算某一列的总和的函数是______。
答案:SUM三、简答题1. 请解释SQL中的JOIN操作。
答案:JOIN操作用于连接两个或多个表,基于表之间的关联关系获取相关数据。
常用的JOIN类型包括INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN。
2. 什么是SQL注入?如何防止SQL注入?答案:SQL注入是一种恶意的攻击方式,通过在用户输入的数据中插入恶意的SQL代码,以获取、修改或删除数据库中的数据。
sql期末考试题及答案
sql期末考试题及答案SQL期末考试题及答案一、选择题(每题2分,共20分)1. SQL代表什么?A. Structured Query LanguageB. Simple Query LanguageC. Standard Query LanguageD. Streamline Query Language答案:A2. 在SQL中,用于查询数据的命令是什么?A. SELECTB. INSERTC. UPDATED. DELETE答案:A3. 下列哪个不是SQL的数据类型?A. INTB. CHARC. IMAGED. DATE答案:C4. SQL中的主键约束是什么?A. 唯一性约束B. 非空约束C. 默认值约束D. 检查约束答案:A5. SQL语句中,用于插入数据的命令是什么?A. SELECT INTOB. INSERT INTOC. UPDATED. DELETE答案:B6. 下列哪个不是SQL中的聚合函数?A. COUNTB. AVGC. SUMD. DISTINCT答案:D7. SQL中的外连接是什么?A. INNER JOINB. LEFT JOINC. RIGHT JOIND. OUTER JOIN答案:D8. SQL中的事务是什么?A. 一组SQL语句的集合B. 一个数据库表C. 一个数据库视图D. 一个数据库索引答案:A9. SQL中的视图是什么?A. 一个数据库表B. 一个数据库索引C. 一个虚拟的数据库表D. 一个数据库存储过程答案:C10. SQL中的存储过程是什么?A. 一组预先编写好的SQL语句B. 一个数据库表C. 一个数据库视图D. 一个数据库触发器答案:A二、简答题(每题5分,共30分)1. 解释SQL中的主键和外键的区别。
答案:主键是表中用来唯一标识每条记录的字段,不能有重复值,也不能为NULL。
外键是一个表中的字段,它对应于另一个表的主键,用于维护两个表之间的链接。
sql数据库考试题库
sql数据库考试题库SQL数据库考试题库一、选择题(每题2分,共20分)1. SQL代表什么?A. Structured Query LanguageB. Simple Query LanguageC. Standard Query LanguageD. None of the above2. 在SQL中,用来查询数据的关键字是:A. SELECTB. INSERTC. UPDATED. DELETE3. 下列哪个不是SQL数据类型?A. INTB. DATEC. TEXTD. IMAGE4. 以下哪个SQL语句用于删除表?A. DROP TABLEB. REMOVE TABLEC. DELETE TABLED. ERASE TABLE5. 在SQL中,用来插入数据的关键字是:A. INSERT INTOB. ADD INTOC. CREATE INTOD. PUT INTO6. 以下哪个是SQL的聚合函数?A. AVG()B. AVERAGE()C. MEAN()D. SUM()7. SQL中的主键是什么?A. 一个表中唯一的字段B. 一个表中可以有多个的字段C. 一个表中不允许重复的字段D. 一个表中可以有多个的字段,但它们必须一起是唯一的8. SQL中的外键是什么?A. 一个表中与另一个表的字段相关联的字段B. 一个表中与自身字段相关联的字段C. 一个表中不允许为空的字段D. 一个表中可以为空的字段9. 在SQL中,用来更新数据的关键字是:A. UPDATEB. MODIFYC. CHANGED. ALTER10. SQL中的事务是什么?A. 一组SQL语句,要么全部执行,要么全部不执行B. 一个单独的SQL语句C. 一个数据库D. 一个表二、填空题(每题2分,共20分)11. SQL中的________是用来定义和修改数据库结构的语言。
12. 在SQL中,使用________语句可以添加新的数据行到表中。
SQL 数据库试题及答案
SQL 数据库试题及答案一、单选题(每题2分,共20分)()1、下列不能启动SQL Server服务的方法:A、使用SQL Server配置管理器B、使用Windows的管理工具C、使用net start mssqlserver 命令D、在查询编辑器中编写T-SQL程序()2、部分匹配查询中有关通配符“%”的正确的叙述是。
A、“%”代表多个字符B、“%”可以代表零个或多个字符C、“%”不能与“_”一同使用D、“%”代表一个字符()3、在SELECT子句中,如果想要返回结果集中不包含相同的行,应该使用关键字。
A、TOPB、ASC、DISTINCTD、JOIN()4、是表中用来唯一标识的每行记录。
A、外键B、主键C、索引D、数据库完整性()5、SQL 中,"GRADE NOT BETWEEN 60 AND 90"的语义是。
A、GRADE<60 OR GRADE>90B、GRADE<= 60 OR GRADE>= 90C、GRADE<>60 AND GRADE<>90D、GRADE<>60 OR GRADE<>90()6、简称DBA。
A、数据库管理员B、数据库C、数据库管理系统D、计算机硬件()7、在SQL中,可以使用语句执行恢复数据库的操作。
A、BACKUP DA TABASEB、RESTORE DA TABASEC、CREATE DARABASED、DROP DATABASE()8、设一个班级可选修多门课程,一门课程可被多个班级选修,班级与课程之间是。
A、一对一的联系B、一对多的联系C、多对一的联系D、多对多的联系()9、SQL Server2016的数据库中主数据文件的扩展名是。
A、.mdfB、.ndfC、.ldfD、.dbf()10、当表中引入时,会提高记录的查询速度。
A、外键B、主键C、索引D、数据库完整性二、数据库设计题(共40分)根据如下E-R图,将其转换为逻辑数据库。
SQL查询优化考试试卷
SQL查询优化考试试卷(答案见尾页)一、选择题1. SQL查询优化的目的是什么?A. 提高查询速度B. 增加数据库负担C. 减少数据冗余D. 降低系统稳定性2. 在进行SQL查询优化时,以下哪个不是常用的优化方法?A. 使用分区表B. 使用存储过程C. 尽量避免使用SELECT *D. 避免使用子查询3. 以下哪个不是索引的作用?A. 提高查询速度B. 增加数据冗余C. 加速表之间的连接D. 减少查询所需的时间4. 在SQL查询优化中,通常建议避免使用哪种类型的子查询?A. 相关子查询B. 非相关子查询C. 标量子查询D. 表子查询5. 在SQL查询优化中,使用哪个命令可以帮助分析查询性能?A. EXPLAINB. DESCRIPTORC. ANALYZED. PROFILE6. 以下哪个因素可能导致SQL查询性能下降?A. 数据库服务器硬件故障B. 数据库表空间不足C. 索引过多或缺失D. 查询语句语法错误7. 在进行SQL查询优化时,如何确定是否需要优化?A. 查看查询执行时间B. 分析查询计划C. 询问开发人员D. 直接修改查询语句8. 在SQL查询优化中,通常建议使用哪种类型的连接(INNER JOIN)?A. 左连接(LEFT JOIN)B. 右连接(RIGHT JOIN)C. 内连接(INNER JOIN)D. 外连接(OUTER JOIN)9. 在SQL查询优化中,如何减少查询中的数据量?A. 使用LIMIT子句B. 使用WHERE子句过滤C. 使用JOIN代替子查询D. 使用GROUP BY和HAVING子句10. 在SQL查询优化中,如何提高查询结果的准确性?A. 使用正则表达式B. 使用聚合函数C. 使用视图(VIEW)D. 使用触发器(TRIGGER)11. SQL查询优化的首要目标是提高查询效率,减少查询所需的时间和资源。
以下哪个不是优化查询性能的常用方法?A. 使用索引B. 优化数据结构C. 添加冗余数据D. 使用分页查询12. 在进行SQL查询优化时,对查询语句进行规范化处理可以提高查询效率。
sql试题及答案
sql试题及答案一、单选题1. Microsoft公司的SQL Server2000数据库管理系统一般只能运行于()。
A. Windows平台B. UNIX平台C. LINX平台D. NetWare平台2. 当一条SELECT语句访问一张大表里的有限几行数据时,SQL Server2000通常会()。
A. 为数据加上页级锁B. 为数据加上行级锁C. 需要用户的干涉和参与D. 使用户独占数据库3. 当采用Windows认证方式登录数据库服务器时,SQL Server2000客户端软件会向操作系统请求一个()。
A. 信任连接B. 邮件集成C. 并发控制D. 数据转换服务4. 以下对SQL Server2000描述不正确的是()。
A. 支持XMLB. 支持用户自定义函数C. 支持邮件集成D. 支持网状数据模型5. 如果在SQL Server2000上运行一个非常大的数据库,为取得较好效果应选用安装()。
A. 企业版B. 标准版C. 个人版D. 开发版6. 提高SQL Server2000性能的最佳方法之一是()。
A. 增大硬盘空间B. 增加内存C. 减少数据量D. 采用高分辨率显示器7. SQL Server2000标准版不支持的操作系统是()。
A. Windows 2000 ServerB. Windows NT ServerC. Windows98D. Windows 2000 Advanced Server8. 如果希望完全安装SQL Server2000,则应选择()。
A. 典型安装B. 最小安装C. 自定义安装D. 仅连接9. 要想使SQL Server2000数据库管理系统开始工作,必须首先启动()。
A. SQL Server服务器B. 查询分析器C. 网络实用工具D. 数据导入和导出程序10. 用于配置客户端网络连接的工具是()。
A. 企业管理器B. 客户端网络实用工具C. 查询分析器D. 联机帮助文档11. SQL Server2000的物理存储主要包括3类文件()。
sql基础考题
SQL基础知识考核试题一、单选题1、以下哪种情况应尽量创建索引()。
[单选题]*A、在Where子句中出现频率较高的列√B、具有很多NULL值的列C、记录较少的基本表D、需要更新频繁的基本表2、()是对客观事物及其活动的抽象符号表示,是存储在某一种媒体上可以鉴别的符号资料,其形式可以是数字、文字、图像、图形和声音等。
[单选题]*A、数据√B、符号C、字符D、信息3、对视图的描述错误的是:()[单选题]*A、是一张虚拟的表B、在存储视图时存储的是视图的定义C、在存储视图时存储的是视图中的数据√D、可以像查询表一样来查询视图4、SQL语言中,SELECT语句的中FROM子句指出的是查询的()[单选题]*A、数据来源√C、输出数据项D、分组依据5、查询时去重的关键字是()[单选题]*A、distanceB、distinct√C、disableD、disappear6、对查询结果进行升序排序的关键字是()[单选题]*A、ABCB、ASC√C、ABCDD、DESC8、以下哪两个关键字不是等效的()[单选题]*A、join和innerjoinB、fulljoin和fullouterjoinC、leftjoin和leftouterjoinD、rightjoin和rightinnerjoin√9、以下哪个是同义词()[单选题]*A、SYNONYM√B、SECRETC、SYNC10、以下哪种不属于数据库的约束()[单选题]*A、主键约束B、检查约束C、非空约束D、隔离约束√11、关于唯一约束,以下描述错误的是()[单选题]*A、所有值都是唯一值B、值可以为nullC、可以多列进行组合√D、会自动创建索引12、关于索引,以下描述正确的是()[单选题]*A、索引不会占据空间B、索引越多越好C、索引不会影响删除的效率D、非聚集索引可以创建多个√13、关于数据类型,以下描述正确的是()[单选题]*A、bit类型不可以存储null值B、bigint的值可以无限大C、tinyint用来表示人类的年龄比较合适√D、浮点数据是精确值,数据类型范围内的所有值都能精确地表示14、关于日期类型,以下描述准确的是()[单选题]*A、date类型可以储存时分秒B、datetime可以精确到千分之一秒√C、smalldatetime可以精确到1秒D、datetimeoffset不可以用来表示时区。
SQL数据库试题
数据库试题3一、选择题1.下面哪个范式不是关系模型中的范式(C)A、第一范式B、第二范式C、范德蒙范式D、BCNF范式2.SQL Server 2000不包含以下哪个版本(B)A、SQL Server 2000 企业版(Enterprise Edition)B、SQL Server 2000 专业版(Professional Edition)标准版C、SQL Server 2000 个人版(Personal Edition)D、SQL Server 2000 开发版(Developer Edition)3.下面哪一项不属于T-SQL语言的组成部分(B)A、数据定义语言(DDL)B、数据查询语言(DFL)C、数据操纵语言(DML)D、数据控制语言(DCL)4.下面哪个不是SQL Server数据库的系统数据类型(C)A、int、smallintB、char、varcharC、String、charD、datetime、int5.下面关于SQL Server数据库中变量的描述,不正确的是(C )A、SQL Server中变量可分为全局变量和局部变量两大类。
B、全局变量由系统提供且预先声明,通过在名称前加两个”@”符号区别于局部变量。
C、不用SELECT语句给变量赋值D、在批处理或存储过程中使用DECLARE语句声明局部变量6.下面程序的运行结果为(B)DECLARE @var1 int, @var2 intSET @var1 = 200SET @var2 = 100IF @var1 < @var2PRINT '@var1的值小于@var2的值'ELSEBEGINPRINT '执行SQL语句块'PRINT '@var1的值大于@var2的值'ENDGOA、@var1的值大于@var2的值B、执行SQL语句块@var1的值大于@var2的值C、@var1的值小于@var2的值D、@var1的值小于@var2的值执行SQL语句块@var1的值大于@var2的值7.下面哪个不是SQL Server数据库中的聚合函数(C)A、COUNTB、SUM和AVGC、CONVERTD、MAX和MIN8.下面哪个不是SQL Server2000数据库对象(B)A、表、视图B、队列、约束C、索引、存储过程D、触发器、约束9.下面哪个不是SQL Server 2000中的系统数据库()A、master数据库B、tempdb数据库C、PetStoreDB数据库D、model数据库10.关于下面创建数据库的脚本,描述不正确的是(C )CREATE DATABASE OPCDBON( NAME = 'OPCDB_Data',FILENAME = 'D:\Microsoft SQL Server\MSSQL\Data\OPCDB.mdf', SIZE = 3MB,MAXSIZE = 50MB,FILEGROWTH = 10%)LOG ON( NAME = 'OPCDB_Log',FILENAME = 'D:\Microsoft SQL Server\MSSQL\Data\OPCDB.ldf', SIZE = 2MB,MAXSIZE = 5MB,FILEGROWTH = 1MB)GOA、数据库的名称为OPCDBB、数据库的数据文件的物理路径为:D:\Microsoft SQLServer\MSSQL\Data\OPCDB.mdfC、日志文件可有可无D、数据文件的初始大小为3MB11.在SQL语言中删除数据表的命令为(C)A、DELETE TABLEB、CREATE TABLEC、DROP TABLED、ALTER TABLE12.下列哪个不是SQLServer数据库约束类型(B)A、主关键字约束、默认约束B、外关健字约束、条件约束C、唯一性约束、默认约束D、检查约束、外关健字约束13.下表是login表的相关信息userNamepasswordfirstfirstsecondsecond代码“select * from login where userName = …first‟”的执行结果是(C )A、first firstB、second secondsecondsecondC、first firstD、first second代码“select count(*) from login”的执行结果是( B )A、1B、2C、3D、414.关于子查询的描述不正确的是(C)A、使用IN(或NOT IN)的子查询返回的查询结果是一列零值或更多值。
sql考试题及答案
sql考试题及答案一、选择题1. 在SQL中,用于查询一个表中的所有记录的关键字是什么?A. SELECT ALLB. SELECT *C. SELECT DISTINCTD. SELECT TOP 10答案:B2. 下列哪个SQL语句用于添加新的数据行到表中?A. INSERT INTOB. ADD INTOC. CREATE INTOD. NEW INTO答案:A3. 在SQL中,用于删除表中的记录的关键字是什么?A. REMOVEB. DELETEC. ERASED. DROP答案:B4. 下列哪个函数用于计算字段中所有值的总和?A. COUNTB. SUMC. AVGD. MAX答案:B5. 如果你想更新表中的记录,应该使用哪个SQL语句?A. UPDATEB. ALTERC. MODIFYD. CHANGE答案:A二、填空题1. 在SQL中,________关键字用于从一个或多个表中选择数据。
答案:SELECT2. 要为表中的数据设置条件过滤,应使用________子句。
答案:WHERE3. 当需要对查询结果进行排序时,可以使用________关键字。
答案:ORDER BY4. 如果需要对表中的数据进行分组,应使用________关键字。
答案:GROUP BY5. 为了对分组后的结果进行筛选,可以使用________子句。
答案:HAVING三、简答题1. 请简述SQL中的主键和外键的区别。
答案:主键是表中用于唯一标识每条记录的字段,它不允许重复值和NULL值。
外键则是一个表中的字段,它是另一个表的主键的引用,用于建立表之间的联系。
外键可以有重复值,也可以为NULL。
2. 解释SQL中的JOIN操作。
答案:JOIN操作是SQL中用于结合两个或多个表中的数据的查询操作。
通过JOIN,可以根据相关字段将不同表中的记录连接起来,以便进行更复杂的数据分析和查询。
3. 什么是SQL中的事务?答案:事务是SQL中一组操作的集合,这些操作要么全部成功执行,要么全部不执行。
SQL数据库试题
SQL数据库试题一、单项选择题(每小题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 )。
A.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. 数据库三、填空题(每空1分,共20分)1.数据库系统具有数据的_外模式__、_模式___和内模式三级模式结构。
sql经典练习题库(附答案)
SQL练习题库表结构Student(S#,Sname,Sage,Ssex) 学生表Course(C#,Cname,T#) 课程表SC(S#,C#,score) 成绩表Teacher(T#,Tname) 教师表试题:1、查询“0001”课程比“C002”课程成绩高的所有学生的学号;Select s# from scWhere c#='0001' and score>any(select score from sc c#='0002')2、查询平均成绩大于60分的同学的学号和平均成绩;select s#,avg(score) from SCgroup by s#having avg(score)>603、查询所有同学的学号、姓名、选课数、总成绩;select student.s#,student.sname,count(sc.c#)as 选课数,sum(score)总成绩from student,scwhere student.s#=sc.s#group by student.s#,student.sname4、查询姓“张”的老师的个数;select count(*)人数from teacherwhere tname like'张%'5、查询没学过“叶平”老师课的同学的学号、姓名;select student.s#,student.sname from student,course,teacher,scwhere student.s#=sc.s# and course.t#=teacher.t# and teacher.t# not in(select t# from teacher where tname='张丽芬') group by student.s#,student.sname6、查询学过“0001”并且也学过编号“0002”课程的同学的学号、姓名;select sc.s#,sname from sc,studentwhere sc.c# = '0001' and student.s# = sc.s# and sc.s# in (select s# from sc where sc.c# = '0002')--并(两表值)select student.s#,student.sname from student,scwhere student.s#=sc.s# and sc.c#='0001'unionselect student.s#,student.sname from student,scwhere student.s#=sc.s# and sc.c#='0002'--交(有相同值)select student.s#,student.sname from student,scwhere student.s#=sc.s# and sc.c#='0001'intersectselect student.s#,student.sname from student,scwhere student.s#=sc.s# and sc.c#='0002'--差(不同值)select student.s#,student.sname from student,scwhere student.s#=sc.s# and sc.c#='0001'exceptselect student.s#,student.sname from student,scwhere student.s#=sc.s# and sc.c#='0002'7、查询学过“叶平”老师所教的所有课的同学的学号、姓名;select student.s#,student.sname from student,course,teacher,scwhere student.s#=sc.s# and course.t#=teacher.t# and teacher.t# in(select t# from teacher where tname='张丽芬')group by student.s#,student.sname8、查询课程编号“001”的成绩比课程编号“002”课程低的所有同学的学号、姓名;select student.s#,sname,score from student,scwhere student.s#=sc.s# and score in(( select score from sc where c#='0001' )<all( select score from sc where c#='0002' )) 9、查询所有课程成绩小于60分的同学的学号、姓名;select student.s#,sname from studentwhere s# in(select s# from sc where score<60)10、查询没有学全所有课的同学的学号、姓名;select student.s#,student.sname from student,scwhere student.s#=sc.s#group by student.s#,student.snamehaving count(c#)<(select count(c#) from course)11、查询至少有一门课与学号为“1001”的同学所学相同的同学的学号和姓名;select student.s#,student.sname from student,scwhere student.s#=sc.s# and c#=any(select c# from scwhere s#='1001')group by student.s#,student.sname12、查询至少学过学号为“0001”同学所有一门课的其他同学学号和姓名;Select sc.s#,sname from sc inner join student on sc.s#=student.s#Where c# in (select c# from sc where s#=’0001’)13、把“SC”表中“赵雁南”老师教的课的成绩都更改为此课程的平均成绩;update scset score=(select avg(sc.score) from sc,teacher,coursewhere sc.c#=course.c# and course.t#=teacher.t# and teacher.tname='赵雁南')where sc.c#=(select c# from course,teacher where course.t#=teacher.t# and tname='赵雁南' )14、查询和“1002”号的同学学习的课程完全相同的其他同学学号和姓名;select student.s#,sname from student,scwhere student.s#=sc.s# and sc.c#=all(select c# from sc where s#='1005') and student.s#<>'1005'15、删除学习“朱玉文”老师课的SC表记录;delete from scwhere c# in(select c# from sc where c# in (select c# from course,teacher where teacher.t#=course.t# and teacher.tname='朱玉文' ) )16、向SC表中插入一些记录,这些记录要求符合以下条件:没有上过编号“0002”课程的同学学号、号课的平均成绩;insert into scvaluesselect s# from sc where s# not in (select s# from sc where c#='0002'select avg(score) as 平均成绩from sc where c#='0002'17、按平均成绩从高到低显示所有学生的“数据库”、“企业管理”、“英语”三门的课程成绩,按如下形式显示:学生ID,,数据库,企业管理,英语,有效课程数,有效平均分select sc.s#,ame,sc.score,avg(score)as 平均成绩from sc inner join course on sc.c#=course.c#where sc.c# in(select c# from course where cname=any(select cname from course where cname in('计算机基础','Oracle','软件工程')))group by sc.s#,ame,sc.scoreorder by avg(score) descSELECT S# as 学生ID,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#='0001') AS 计算机基础,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#='0002') AS Oracle,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#='0011') AS 软件工程,COUNT(*) AS 有效课程数, AVG(t.score) AS 平均成绩FROM sc AS tGROUP BY S#ORDER BY avg(t.score) desc18、查询各科成绩最高和最低的分:以如下形式显示:课程ID,最高分,最低分select c# 课程ID,max(score) 最高分,min(score) 最低分from scgroup by c#19、按各科平均成绩从低到高和及格率的百分数从高到低顺序select c#, avg(score) from scwhere score>60group by c#20、查询如下课程平均成绩和及格率的百分数(用"1行"显示): 企业管理(),马克思(),OO&UML (),数据库()21、查询不同老师所教不同课程平均分从高到低显示select course.t#,avg(sc.score) as 平均分from sc,coursewhere sc.c#=course.c#group by course.t#order by avg(sc.score) desc22、查询如下课程成绩第3 名到第6 名的学生成绩单:企业管理,马克思,UML,数据库[学生ID],[学生姓名],企业管理,马克思,UML,数据库,平均成绩select student.s#,student.sname,sc.score,ame from student inner join sc on student.s#=sc.s#inner join course on sc.c#=course.c#where ame in('oracle','电路分析','计算机基础')order by ame,sc.score desc23、统计列印各科成绩,各分数段人数:课程ID,课程名称,[100-85],[85-70],[70-60],[ <60]select sc.c#,ame,count(*)人数from sc,coursewhere course.c#=sc.c#group by sc.c#,ame24、查询学生平均成绩及其名次select sc.s#,avg(score) from scgroup by sc.s#order by avg(score) desc25、查询各科成绩前三名的记录考虑成绩并列情况select s#,c# ,score from scwhere score in (select distinct top 3 score from scgroup by c#,score)order by score desc26、查询每门课程被选修的学生数select c# as 课程号,count(c#)as 选修人数from scgroup by c#order by count(c#) desc27、查询出只选修了一门课程的全部学生的学号和姓名select sc.s#,student.sname from sc inner join student on student.s#=sc.s#group by sc.s#,student.snamehaving count(c#)=128、查询男生、女生人数select ssex, count(*) as 总人数from studentgroup by ssex29、查询姓“张”的学生名单select sname from studentwhere sname like '张%'30、查询同名同性学生名单,并统计同名人数select ssex,count(*) from studentgroup by ssex31、同年出生的学生名单(注:Student表中Sage列的类型是datetime)32、查询每门课程的平均成绩,结果按平均成绩升序排列,平均成绩相同时,按课程号降序排列select c#,avg(score)平均成绩from scgroup by c#order by avg(score) asc33、查询平均成绩大于的所有学生的学号、姓名和平均成绩select top 1 student.s#,student.sname,avg(score)平均成绩from student inner join sc on student.s#=sc.s#group by student.s#,student.snameorder by avg(score) desc34、查询课程名称为“数据库”,且分数低于80的学生姓名和分数select student.sname,sc.score from sc,student,coursewhere student.s#=sc.s# and sc.c#=course.c# and ame='计算机基础' and sc.score<80group by student.sname,sc.score35、查询所有学生的选课情况;select student.s#,sname,c# from student left join sc on student.s#=sc.s#36、查询任何一门课程成绩在70分以上的姓名、课程名称和分数;select student.sname,ame,sc.score from student,sc,coursewhere student.s#=sc.s# and sc.c#=course.c# and sc.score>70order by score desc37、查询不及格的课程,并按课程号从大到小排列select c#,score from scwhere score<60order by c#38、查询课程编号为0001且课程成绩在70分以上的学生的学号和姓名;select student.s#,sname from sc,studentwhere c#='0001' and score>70 and student.s#=sc.s#39、求选了课程的学生人数select count(s#)人数from scwhere sc.score<>040、查询选修“oracle”课程的学生中,成绩最高的学生姓名及其成绩select top 1 student.sname,max(sc.score)成绩最高from student inner join sc on student.s#=sc.s# inner join course on sc.c#=course.c#where ame='oracle'group by student.snameorder by max(sc.score) desc41、查询各个课程及相应的选修人数select ame,count(sc.c#) as 选修人数from sc inner join course on sc.c#=course.c#group by ameorder by count(sc.c#) desc,ame asc42、查询不同课程成绩相同的学生的学号、课程号、学生成绩43、查询每门功成绩最好的前两名SELECT t1.S# as 学生ID,t1.C# as 课程ID,Score as 分数FROM SC t1WHERE score IN (SELECT TOP 2 score FROM SCWHERE t1.C#= C#ORDER BY score DESC)ORDER BY t1.C#44、统计每门课程的学生选修人数(超过人的课程才统计)。
SQL数据库上机考试题
一、用Transact-SQL语句定义数据库(每题6分,共12分)1、创建名为School的数据库,该数据库包含二个大小为2MB的数据文件(文件名为:<你的姓名>_school_dat1和<你的姓名>_school_dat2)和一个大小为1MB的事务日志文件(文件名为:<你的姓名>_school_log)。
限制数据文件大小为5MB、日志文件为2MB。
对于所有文件,允许20%的文件增长。
请将创建数据库的Transact-SQL 脚本存为<你的姓名>_1_01.sql文件。
解:drop database schoolgocreate database schoolonprimary(name='lts_school_dat1',filename='C:\Program Files\Microsoft SQLServer\MSSQL.1\MSSQL\Data\lts_school_dat1.mdf',size=3MB,maxsize=5MB,filegrowth=20%),filegroup fgroup(name='lts_school_dat2',filename='C:\Program Files\Microsoft SQLServer\MSSQL.1\MSSQL\Data\lts_school_dat2.ndf',size=2MB,maxsize=5MB,filegrowth=20%)log on(name='lts_school_log',filename='C:\Program Files\Microsoft SQLServer\MSSQL.1\MSSQL\Data\lts_school_log.ldf',size=1MB,maxsize=2MB,filegrowth=20%)go2、修改数据文件<你的姓名>_school_dat1,增加其大小至3MB,并允许按0.5MB(512KB)的增量增至最大大小6MB;删除数据文件<你的姓名>_school_dat2;添加一个新的1MB的数据文件(文件名为:<你的姓名>_school_dat3),允许它以1MB增量增至磁盘被充满。
大学sql试题及答案
大学sql试题及答案一、单项选择题(每题2分,共20分)1. SQL中用于查询数据的语句是:A. SELECTB. INSERTC. UPDATED. DELETE答案:A2. 在SQL中,用于添加新记录的语句是:A. SELECTB. INSERTC. UPDATED. DELETE答案:B3. SQL中用于修改数据的语句是:A. SELECTB. INSERTC. UPDATED. DELETE答案:C4. SQL中用于删除数据的语句是:A. SELECTB. INSERTC. UPDATED. DELETE答案:D5. SQL中用于创建新表的语句是:A. CREATE TABLEB. INSERT INTOC. UPDATE TABLED. DROP TABLE答案:A6. 在SQL中,哪个关键字用于指定查询结果中列的别名?A. ASB. FROMC. WHERED. SELECT答案:A7. SQL中用于指定查询条件的关键字是:A. SELECTB. FROMC. WHERED. INTO答案:C8. SQL中用于连接两个或多个表的关键字是:A. JOINB. UNIONC. INTERSECTD. EXCEPT答案:A9. 在SQL中,用于分组数据的关键字是:A. GROUP BYB. ORDER BYC. HAVINGD. LIMIT答案:A10. SQL中用于排序查询结果的关键字是:A. GROUP BYB. ORDER BYC. HAVINGD. LIMIT答案:B二、多项选择题(每题3分,共15分)1. 在SQL中,以下哪些关键字用于数据定义语言(DDL)?A. CREATEB. INSERTC. DROPD. ALTER答案:A, C, D2. 在SQL中,以下哪些关键字用于数据操纵语言(DML)?A. SELECTB. INSERTC. UPDATED. DELETE答案:A, B, C, D3. 在SQL中,以下哪些关键字用于数据控制语言(DCL)?A. GRANTB. REVOKEC. COMMITD. ROLLBACK答案:A, B4. 在SQL中,以下哪些语句可以用于数据的聚合操作?A. COUNTB. SUMC. AVGD. MAX答案:A, B, C, D5. 在SQL中,以下哪些关键字用于查询优化?A. INDEXB. JOINC. WHERED. GROUP BY答案:A, B, C, D三、填空题(每题3分,共30分)1. SQL中的________关键字用于创建新数据库。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
sql试题12
SQL数据库试题12
一、单项选择题(每小题1分,共10分)
1. 在查询分析器中执行SQL语句的快捷键是( C )。
A(F1 B(F3
C(F5 D(F6
2. SQL语言中,删除一个表的命令是( B )。
A. DELETE
B. DROP
C. CLEAR
D. REMOVE 3. 哪个关键字用于测试跟随的子查询中的行是否存在( B )。
A(MOV B(EXISTS
C(UNION D(HAVING
4. 以哪个符号开头的变量是全局变量( C )。
A(@ B(@*
C(@@ D(@$
5. 下面哪项是一元运算符( D )。
A(/ B(%
C(> D(-
6. 如果在一个关系中,存在某个属性(或属性组),虽然不是该关系的主码或只是主码的一部分,但却是另一个关系的主码时,称该属性(或属性组)为这个关系的 C A.候选码 B.主码
C.外码
D.连接码
7. 事务的持久性是由数据库管理系统中的哪个部件负责( D )
A. 恢复管理
B. 锁定设备(并发控制)
C. 完整性约束
D. 记录设备(存储管理)
8. E-R模型用于数据库设计的哪一个阶段( B )。
A.需求分析
B.概念结构设计
C. 逻辑结构设计
D.物理结构设计
9. 查询语句select stuff('he rld',3,l, 'llo wo')结果为( C )。
A(hello B(world hello
C(hello world D(world
10. 在Student表中基于StuName字段建立的索引属于( B )。
A(惟一索引非聚集索引 B(非惟一索引非聚集索引
C(聚集索引非惟一索引 D(惟一索引聚集索引
三、填空题(每空1分,共20分)
1. 实体—联系模型的三要素是____实体__、____属性___和实体之间的联系。
2. 创建、修改和删除表语句分别是__ create __ table、__ alter _ table和__ drop _ table。
3. SQL Server的数据类型可分为_系统__数据类型和_用户自定义_数据类型。
4. Transact,SQL语言有4部分元素组成,分别是:数据定义语言、___数据操作语言__、_数据控制语言__ 和一些附加的语言元素。
5. 表或视图的操作权限有select、__ insert __、__ update ___、___ delete _和dri。
6. 数据完整性分为__域__完整性、_实体_完整性、_参照__完整性和用户自定义完整性。
7. 将E-R图中的实体和联系转换为关系模型中的关系,这是数据库设计过程中__逻辑结构__设计阶段的任务。
8. SQL Server复制把服务器分为_发布_服务器、__分发_服务器和订阅服务器三种。
9. SQL Server聚合函数有最大、最小、求和、平均和计数等,它们分别是max、_ min __、
__ sum _、avg和count。