SQL作业

合集下载

SQL基础知识题库100道及答案(完整版)

SQL基础知识题库100道及答案(完整版)

SQL基础知识题库100道及答案(完整版)1. 在SQL 中,用于创建表的语句是()A. CREATE TABLEB. INSERT INTOC. UPDATED. DELETE答案:A2. 以下哪个关键字用于在SQL 中添加数据()A. ADDB. INSERTC. APPENDD. PUT答案:B3. 在SQL 中,用于从表中检索数据的语句是()A. SELECTB. GETC. FETCHD. REQUEST答案:A4. 以下哪个关键字用于在SQL 中更新数据()A. MODIFYB. CHANGEC. UPDATED. REPLACE答案:C5. 要从表中删除数据,应使用的SQL 语句是()A. DROPB. DELETEC. REMOVED. CLEAR答案:B6. SQL 中用于创建索引的关键字是()A. CREATE INDEXB. MAKE INDEXC. BUILD INDEXD. ESTABLISH INDEX答案:A7. 以下哪种数据类型用于存储整数()A. INTB. FLOATC. VARCHARD. DATE答案:A8. 用于存储字符串的常见数据类型是()A. CHARB. INTC. DECIMALD. DOUBLE答案:A9. 在SQL 中,用于对结果集进行排序的关键字是()A. SORTB. ORDER BYC. ARRANGED. ALIGN答案:B10. 以下哪个运算符用于等于比较()A. =B. ==C. <>D. >答案:A11. 用于不等于比较的运算符是()A.!=B. < >C. NOT EQUALSD. DIFFERENT答案:B12. 以下哪个运算符用于大于比较()A. >B. >=C. <D. <=答案:A13. 用于小于比较的运算符是()A. <B. <=C. >D. >=答案:A14. 以下哪个关键字用于在SQL 中进行分组操作()A. GROUP BYB. SORT BYC. CLASSIFY BYD. CATEGORIZE BY答案:A15. 聚合函数SUM 用于()A. 计算总和B. 计算平均值C. 计算数量D. 计算最小值答案:A16. 聚合函数AVG 用于()A. 计算总和B. 计算平均值C. 计算数量D. 计算最大值答案:B17. COUNT 函数用于()A. 计算总和B. 计算平均值C. 计算数量D. 计算最小值答案:C18. MAX 函数用于()A. 计算总和B. 计算平均值C. 计算最大值D. 计算最小值答案:C19. MIN 函数用于()A. 计算总和B. 计算平均值C. 计算最大值D. 计算最小值答案:D20. 在SQL 中,用于连接两个表的关键字是()A. JOINB. CONNECTC. LINKD. BIND答案:A21. 内连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:A22. 左连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:B23. 右连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:C24. 全连接使用的关键字是()A. INNER JOINB. LEFT JOINC. RIGHT JOIND. FULL JOIN答案:D25. 在SQL 中,用于限制结果集行数的关键字是()A. LIMITB. RESTRICTC. BOUNDD. CONSTRAINT答案:A26. 以下哪个子句用于在SQL 中进行条件筛选()A. WHEREB. HAVINGC. FROMD. GROUP BY答案:A27. HAVING 子句通常与()一起使用A. GROUP BYB. ORDER BYC. WHERED. FROM答案:A28. 在SQL 中,用于创建视图的语句是()A. CREATE VIEWB. MAKE VIEWC. BUILD VIEWD. ESTABLISH VIEW 答案:A29. 以下哪个关键字用于删除视图()A. DROP VIEWB. DELETE VIEWC. REMOVE VIEWD. CLEAR VIEW 答案:A30. 要在SQL 中添加注释,可以使用()A. //B. /* */C. #D. --答案:D31. 在SQL 中,以下哪种数据类型用于存储日期和时间()A. DATEB. TIMEC. DATETIMED. TIMESTAMP答案:C32. 用于提取日期部分的函数是()A. DATEPART()B. DAY()C. MONTH()D. YEAR()答案:A33. 以下哪个函数用于计算字符串的长度()A. LENGTH()B. SIZE()C. COUNT()D. LEN()答案:A34. 在SQL 中,用于将字符串转换为大写的函数是()A. UPPER()B. TO_UPPER()C. CAPITALIZE()D. BIGCASE()答案:A35. 用于将字符串转换为小写的函数是()A. LOWER()B. TO_LOWER()C. SMALLCASE()D. DECAPITALIZE()答案:A36. 以下哪个函数用于去除字符串两端的空格()A. TRIM()B. CLEAN()C. REMOVE_SPACES()D. STRIP()答案:A37. 在SQL 中,用于执行事务的语句是()A. BEGIN TRANSACTIONB. START TRANSACTIONC. OPEN TRANSACTIOND. INITIATE TRANSACTION答案:A38. 提交事务使用的语句是()A. COMMITB. SUBMITC. CONFIRMD. VALIDATE答案:A39. 回滚事务使用的语句是()A. ROLLBACKB. REVERTC. CANCELD. ABORT答案:A40. 以下哪个关键字用于在SQL 中创建存储过程()A. CREATE PROCEDUREB. MAKE PROCEDUREC. BUILD PROCEDURED. ESTABLISH PROCEDURE答案:A41. 调用存储过程使用的语句是()A. EXECUTEB. CALLC. INVOKED. RUN答案:B42. 在SQL 中,用于删除存储过程的语句是()A. DROP PROCEDUREB. DELETE PROCEDUREC. REMOVE PROCEDURED. CLEAR PROCEDURE答案:A43. 以下哪个关键字用于在SQL 中创建触发器()A. CREATE TRIGGERB. MAKE TRIGGERC. BUILD TRIGGERD. ESTABLISH TRIGGER44. 删除触发器使用的语句是()A. DROP TRIGGERB. DELETE TRIGGERC. REMOVE TRIGGERD. CLEAR TRIGGER答案:A45. 在SQL 中,用于授予权限的语句是()A. GRANTB. ALLOWC. PERMITD. AUTHORIZE答案:A46. 收回权限使用的语句是()A. REVOKEB. DENYC. REFUSED. FORBID答案:A47. 以下哪个关键字用于在SQL 中创建索引的唯一性约束()A. UNIQUEB. PRIMARY KEYC. FOREIGN KEYD. CHECK答案:A48. 用于定义主键约束的关键字是()A. PRIMARY KEYB. UNIQUE KEYC. FOREIGN KEYD. INDEX KEY答案:A49. 外键约束使用的关键字是()A. FOREIGN KEYB. OUTER KEYC. RELATED KEYD. REFERENCED KEY答案:A50. 以下哪个约束用于检查数据的有效性()A. CHECKB. VALIDATEC. INSPECTD. VERIFY答案:A51. 在SQL 中,以下哪个语句用于创建数据库()A. CREATE DATABASEB. MAKE DATABASEC. BUILD DATABASED. ESTABLISH DATABASE 答案:A52. 要删除数据库,应使用的语句是()A. DROP DATABASEB. DELETE DATABASEC. REMOVE DATABASED. CLEAR DATABASE 答案:A53. 以下哪个关键字用于在SQL 中切换数据库()A. USEB. SELECT DBC. CHANGE DBD. SWITCH DB答案:A54. 在SQL 中,以下哪种操作可以对多个表同时进行()A. 联合查询B. 子查询C. 交叉连接D. 内连接55. 子查询可以在以下哪个子句中使用()A. SELECTB. FROMC. WHERED. 以上都可以答案:D56. 以下哪个语句用于在SQL 中创建用户()A. CREATE USERB. MAKE USERC. BUILD USERD. ESTABLISH USER答案:A57. 删除用户使用的语句是()A. DROP USERB. DELETE USERC. REMOVE USERD. CLEAR USER答案:A58. 在SQL 中,用于修改表结构的语句是()A. ALTER TABLEB. MODIFY TABLEC. CHANGE TABLED. UPDATE TABLE答案:A59. 以下哪个操作可以添加列到表中()A. ADD COLUMNB. INSERT COLUMNC. APPEND COLUMND. PUT COLUMN答案:A60. 要删除表中的列,应使用()A. DROP COLUMNB. DELETE COLUMNC. REMOVE COLUMND. CLEAR COLUMN答案:A61. 在SQL 中,以下哪个关键字用于对结果集进行分页()A. PAGEB. PAGINGC. OFFSETD. LIMIT答案:D62. 以下哪个函数用于返回当前日期()A. CURDATE()B. NOW()C. CURRENT_DATE()D. TODAY()答案:C63. 用于返回当前时间的函数是()A. CURTIME()B. NOW()C. CURRENT_TIME()D. THIS_TIME()答案:C64. 在SQL 中,以下哪个关键字用于为表中的列设置默认值()A. DEFAULTB. INITIALC. BASED. START答案:A65. 以下哪个语句用于在SQL 中重命名表()A. RENAME TABLEB. MODIFY TABLE NAMEC. CHANGE TABLE NAMED. UPDATE TABLE答案:A66. 要获取表的结构信息,可以使用以下哪个语句()A. DESCRIBE TABLEB. SHOW TABLE STRUCTUREC. EXPLAIN TABLED. GET TABLE DETAILS答案:A67. 在SQL 中,以下哪个关键字用于在查询结果中去除重复行()A. DISTINCTB. UNIQUEC. SINGLED. ONLY答案:A68. 以下哪个函数用于对字符串进行拼接()A. CONCAT()B. JOIN()C. MERGE()D. COMBINE()答案:A69. 在SQL 中,用于创建临时表的关键字是()A. TEMPORARY TABLEB. TEMP TABLEC. TRANSIENT TABLED. SHORT_LIVED TABLE答案:A70. 以下哪个语句用于在SQL 中为列添加注释()A. COMMENT ON COLUMNB. NOTE ON COLUMNC. REMARK ON COLUMND. EXPLAIN COLUMN答案:A71. 在SQL 中,以下哪个关键字用于在子查询中引用外部查询的结果()A. CORRELATEDB. RELATEDC. CONNECTEDD. LINKED答案:A72. 以下哪个操作符用于在SQL 中进行范围查询()A. BETWEENB. INC. LIKED. EXISTS答案:A73. 用于模糊匹配的操作符是()A. LIKEB. SIMILARC. MATCHD. CLOSE_TO答案:A74. 在SQL 中,以下哪个关键字用于对查询结果进行排序时按照多个列进行()A. ORDER BY MULTIPLEB. SORT BY SEVERALC. ORDER BY MORE THAN ONED. ORDER BY MULTIPLE COLUMNS答案:D75. 以下哪个函数用于返回字符串的子串()A. SUBSTRING()B. PART()C. SEGMENT()D. SLICE()答案:A76. 在SQL 中,以下哪个关键字用于在存储过程中定义输入参数()A. INB. OUTC. INOUTD. PARAMETER答案:A77. 用于定义输出参数的关键字是()A. INB. OUTC. INOUTD. PARAMETER答案:B78. 以下哪个关键字用于在存储过程中定义既可以输入又可以输出的参数()A. INB. OUTC. INOUTD. PARAMETER答案:C79. 在SQL 中,以下哪个关键字用于在创建表时指定自增列()A. AUTO_INCREMENTB. SELF_INCREMENTC. AUTO_GROWD. SELF_GROW答案:A80. 以下哪个语句用于在SQL 中创建序列()A. CREATE SEQUENCEB. MAKE SEQUENCEC. BUILD SEQUENCED. ESTABLISH SEQUENCE 答案:A81. 要获取序列的下一个值,可以使用以下哪个函数()A. NEXTVAL()B. GET_NEXT()C. NEXT_VALUE()D. FOLLOWING_VALUE()答案:A82. 在SQL 中,以下哪个关键字用于锁定表()A. LOCKB. HOLDC. FREEZED. BLOCK答案:A83. 以下哪种锁类型用于防止其他事务读取或修改数据()A. 共享锁B. 排他锁C. 意向共享锁D. 意向排他锁答案:B84. 共享锁允许其他事务()A. 读取数据B. 修改数据C. 删除数据D. 以上都不行答案:A85. 在SQL 中,以下哪个关键字用于解锁表()A. UNLOCKB. RELEASEC. FREED. UNBIND答案:A86. 以下哪个函数用于计算两个日期之间的天数差()A. DATEDIFF()B. DATE_DIFFERENCE()C. DAY_DIFFERENCE()D. TIME_DIFFERENCE()答案:A87. 在SQL 中,以下哪个关键字用于在查询中使用别名()A. ASB. LIKEC. SAME ASD. EQUALS答案:A88. 以下哪个语句用于在SQL 中创建索引的唯一约束()A. UNIQUE INDEXB. PRIMARY INDEXC. FOREIGN INDEXD. CHECK INDEX答案:A89. 要在SQL 中创建全文索引,应使用()A. FULLTEXT INDEXB. COMPLETE TEXT INDEXC. ALL_TEXT INDEXD. WHOLE_TEXT INDEX 答案:A90. 在SQL 中,以下哪个关键字用于在存储过程中声明变量()A. DECLAREB. DEFINEC. STATED. ANNOUNCE答案:A91. 以下哪个语句用于在SQL 中为变量赋值()A. SETB. ASSIGNC. GIVED. PUT答案:A92. 在SQL 中,以下哪个关键字用于在存储过程中进行条件判断()A. IFB. WHENC. CASED. CHECK答案:A93. 以下哪种语句用于在SQL 中进行循环操作()A. FORB. WHILEC. LOOPD. 以上都是答案:D94. 在SQL 中,用于退出循环的语句是()A. BREAKB. EXITC. STOPD. END答案:A95. 以下哪个函数用于将数字转换为字符串()A. CAST()B. CONVERT()C. TO_STRING()D. NUM_TO_STR()答案:B96. 在SQL 中,用于获取当前会话的用户名称的函数是()A. CURRENT_USERB. SYSTEM_USERC. LOGGED_IN_USERD. SESSION_USER答案:A97. 以下哪个关键字用于在SQL 中创建存储函数()A. CREATE FUNCTIONB. MAKE FUNCTIONC. BUILD FUNCTIOND. ESTABLISH FUNCTION 答案:A98. 要删除存储函数,应使用的语句是()A. DROP FUNCTIONB. DELETE FUNCTIONC. REMOVE FUNCTIOND. CLEAR FUNCTION答案:A99. 在SQL 中,用于获取数据库版本信息的函数是()A. VERSION()B. DB_VERSION()C. DATABASE_VERSION()D. SYSTEM_VERSION()答案:A100. 以下哪个操作可以在SQL 中对表进行重命名()A. RENAME TABLEB. MODIFY TABLE NAMEC. CHANGE TABLE NAMED. UPDATE TABLE NAME答案:A。

SQL语言课后练习[大全5篇]

SQL语言课后练习[大全5篇]

SQL语言课后练习[大全5篇]第一篇:SQL语言课后练习岳阳市湖湘认证培训学校学院路504号************SQL语言课后练习题以下练习都是基于数据库XSG,及数据库表XSCJ与XSDA中操作,表结构如下:XSCJ(学号C(10),语文N(4,1),数学N(4,1),英语N(4,1),计算机N(4,1),平均成绩N(4,1))XSDA(学号C(10),姓名C(10),性别C(4),班级C(10),出生日期D,籍贯C(20),家庭情况G,简历M,照片G)1、用SQL语句建立XSDA表,并为学号字段创建为主关键字,约束性别字段的值只能为男或为女,如果在不输入信息的情况下默认值是女。

2、用SQL语句建立XSCJ表,并与XSDA表建立联系。

3、为XSDA表增加一个学费字段,要求为货币型,约束字段有效性规则:学费必须在0至20000元内(含),否则提示:学费错了。

4、修改XSDA表学费字段,要求学费必须在2000-20000间(含),否则提示:学费错了。

5、修改XSDA表学费字段,删除它的字段有效性规则。

6、修改XSDA表学费字段,将其改名为:学杂费。

7、修改XSDA表的籍贯字段的宽度为10。

8、删除XSDA表的学费字段。

9、将XSDA表的姓名字段和性别字段定义为候选索引,索引名为:TEMP。

10、删除XSDA表的候选索引TEMP。

11、删除XSDA表及XSCJ表。

12、在XSCJ表中插入一个元组:学号:19980405,语文:78,数学:68,英语:74,计算机:90,平均成绩:77.50。

13、在XSDA表中插入一个元组:学号:19980405,姓名:王小辉,性别:男,出生日期:1981年12月5日14、在XSCJ表中为所有学生的英语成绩加10分15、在XSDA表中为学号为:19980405的学生的籍贯改为岳阳市16、删除XSDA表中学号为19980405的记录17、将XSDA表复制到XSDABAK表18、从XSG数据库中的XSDA表查找所有学生的学号、姓名和班级的情况19、从XSG数据库的XSDA表查找计981班的学生的学号、姓名和班级的情况20、从XSG数据库中的XSCJ表中查找计算机成绩大于80的学生的学号21、从XSG数据库的XSDA表查找所有学生的学号、姓名和班级的情况,并按学号降序排序22、从XSG数据库中的XSCJ表中查找计算机成绩大于60的学生学号、语文、计算机和平均成绩,并按计算机的降序排序,如计算机成绩相同,按学号的升序排序23、从XSG数据库的XSDA表查找前4个学生的情况,按学号降序排序24、从XSG数据库中的XSCJ表中查找计算机成绩大于70的前40%学生的学生信息,并按计算机的降序排序25、从XSG数据库的XSDA和XSCJ表查找所有学生的姓名、语文、数学、英语和计算机成绩。

最全的SQL练习题(做完你就是高手)

最全的SQL练习题(做完你就是高手)

最全的SQL练习题(做完你就是⾼⼿)最全的SQL练习题(做完你就是⾼⼿)补充作业⼀设有三个关系:S(SNO, SNAME, AGE, SEX,Sdept)SC(SNO, CNO, GRADE)C(CNO, CNAME, TEACHER)试⽤关系代数表达式表⽰下列查询:-- 1、查询学号为S3学⽣所学课程的课程名与任课教师名。

SELECT c.`name`, c.teacher FROM student_class sc LEFT JOIN `class` c ON o = c.NO WHERE sc.sno = 's3';-- 2、查询⾄少选修LIU⽼师所教课程中⼀门课的⼥⽣姓名。

select s.sname from student as s where s.sno in(select DISTINCT sc.sno from student_class as sc left join class as c on o=o where c.teacher='LIU')and s.sex=2;-- 3、查询WANG同学不学的课程的课程号。

select o from class as c where o not in(select DISTINCT o from student as s inner join student_class as sc on s.sno=sc.sno where s.sname='WANG');-- 4、查询⾄少选修两门课程的学⽣学号。

select sno, count(*) as cou from student_class group by sno having cou>=2;-- 5、查询选修课程中包含LIU⽼师所教全部课程的学⽣学号。

select sc.sno from student_class as sc INNER JOIN class as c on o=o where c.teacher='LIU';补充作业⼆三个关系同上,试⽤SQL语⾔表⽰下列查询:1、查询门门课程都及格的学⽣的学号⽅法1:提⽰:根据学号分组,就得到每个学⽣所有的课程成绩,在某个学⽣这⼀组成绩⾥,如果他所有的课程成绩都⼤于60分则输出该组学⽣的学号Select sno frome sc group by sno having min(grade)>=60;2、查询既有课程⼤于90分⼜有课程不及格的学⽣的学号⾃⾝连接:Select sno from sc where grade >90 and sno in (select sno from sc where grade<60)3、查询平均分不及格的课程号和平均成绩Select cno , avg(GRADE) from sc group by cno having avg(grade)<60查询平均分及格的课程号和课程名Select o , Cname from SC,C where o=o group by o having avg(grade)>=604、找出⾄少选修了2号学⽣选修过的全部课程的学⽣提⽰:不存在这样的课程y,学⽣2选修了y,⽽学⽣x没有选。

sql单选试题及答案

sql单选试题及答案

sql单选试题及答案1. SQL中用于查询数据的语句是:A. SELECTB. INSERTC. UPDATED. DELETE答案:A2. 在SQL中,如何使用别名来重命名列名?A. ASB. RENAMEC. CHANGED. RENAME COLUMN答案:A3. 以下哪个SQL关键字用于删除表?A. DROPB. REMOVEC. DELETED. ERASE答案:A4. 若要在SQL查询中选择多列,应该如何操作?A. 用逗号分隔列名B. 用分号分隔列名C. 用空格分隔列名D. 用星号(*)选择所有列答案:A5. SQL中用于添加新数据行的语句是:A. INSERTB. CREATEC. ADDD. NEW答案:A6. 以下哪个选项不是SQL数据类型?A. INTB. VARCHARC. DATED. XML答案:D7. 在SQL中,如何使用通配符来匹配任意字符?A. %B. _C. *D. @答案:A8. SQL中用于创建新表的语句是:A. CREATEB. NEW TABLEC. ADD TABLED. DEFINE答案:A9. 以下哪个SQL关键字用于更新表中的数据?A. UPDATEB. CHANGEC. MODIFYD. ALTER答案:A10. 在SQL中,如何使用子查询?A. 在SELECT语句中嵌套另一个SELECT语句B. 在UPDATE语句中嵌套另一个UPDATE语句C. 在DELETE语句中嵌套另一个DELETE语句D. 以上都是答案:A。

sql数据库习题与答案

sql数据库习题与答案

sql数据库习题与答案SQL数据库习题与答案SQL(Structured Query Language)是一种用于管理关系型数据库的标准化语言。

在数据库管理系统中,SQL可以用于执行各种操作,如插入、更新、删除和查询数据。

对于学习SQL的人来说,练习SQL数据库习题是非常重要的。

下面将为大家提供一些常见的SQL数据库习题以及相应的答案。

1. 查询所有学生的信息答案:SELECT * FROM students;2. 查询所有学生的姓名和年龄答案:SELECT name, age FROM students;3. 查询所有学生的姓名,并按照年龄从小到大进行排序答案:SELECT name FROM students ORDER BY age;4. 查询学生表中年龄大于18岁的学生信息答案:SELECT * FROM students WHERE age > 18;5. 查询学生表中姓“张”的学生信息答案:SELECT * FROM students WHERE name LIKE '张%';6. 查询学生表中的姓名和对应的课程名称答案:SELECT , FROM students INNER JOIN course ON students.course_id = course.id;7. 查询学生表中每个班级的学生人数答案:SELECT class, COUNT(*) FROM students GROUP BY class;通过以上SQL数据库习题与答案的练习,可以帮助大家更好地理解和掌握SQL语言的基本操作和常用查询。

同时,也可以帮助大家提升解决实际问题的能力,为今后的数据库管理工作打下坚实的基础。

希望大家能够认真对待SQL数据库习题,不断提升自己的技能水平。

SQL 作业训练大全

SQL 作业训练大全
select * from emp
where ename like '%A%' and deptno='3'
--7、编写一条SQL语句,显示在研发部(部门名称)部门工作并且奖金不为空的所有员工。
select * from emp
where deptno=(select deptno from dept where dname='研发部') and comm is not null
--1、编写一条SQL语句,显示奖金为空值的所有员工的姓名
select * from emp where comm is null
--2、编写一条SQL语句,显示工资最高的员工姓名及工资。
select * from emp where sal=( select max(sal) from emp )
--10、编写一条SQL语句,显示研发部的最高工资
select max(sal) from emp inner join dept
on emp.deptno=dept.deptno
where dname='研发部'
--------------------------------------------------------
select top 1 * from emp order by sal desc
--3、编写一条SQL语句,显示在1981之后入职的员工姓名、部门名称及薪水。
select * from emp where year(hiredate)>'1981'
--4、显示所有比上级领导入职还要早的员工姓名及其上级领导的姓名及入职时间。

SQL数据库大作业题目-答案

SQL数据库大作业题目-答案

《SQL数据库》大作业一、单项选择题(在每小题的四个备选答案中,有且仅有一个正确答案,请将正确答案的代号写在题干后的括号内。

答案选错或未选者,该题不得分。

每小题2分,共20分)1、一个仓库可以存放多种产品,一种产品只能存放于一个仓库中。

仓库与产品之间的联系类型是(C)。

A、一对一的联系B、多对一的联系C、一对多的联系D、多对多的联系2、在职工表中,要查询部门10的所有职工信息,这种关系操作是(A)。

A、选择操作B、投影操作C、连接操作D、并操作3、在E-R模型转换成关系模型的过程中,下列叙述不正确的是(B)。

A.每个实体类型转换成一个关系模式B.每个M∶N联系类型转换一个关系模式C.每个联系类型转换成一个关系模式D.在处理1∶1和1∶N联系类型时,不生成新的关系模式。

4、在S Q L S e r v e r数据库文件中,日志文件的后缀名是(A)。

A、ld fB、lo gC、m d fD、n d f5、在S Q L语句中的授权语句中,如果带有下面的(D)子句,则被授权的用户可以将自己所获得的权限再授权给其他用户。

A、W I T H CRE AT E O P T I O NB、W I T H AD MI N O P T I O NC、W I T H C HE C K O P T I O ND、W I T H G R AN T O P T I O N6、如果表中一列未指定缺省值时,为该表增加一条记录,但没有指定该列值,那么插入到数据库中的值是(C)。

A、0B、空格C、N UL LD、任意符合要求的值7、当向某个表插入一条记录时,如果该记录在某一个唯一索引列上的值为空,并且在表中该索引列上不存在空值的记录,那么将发生的情况是(A)。

A、出错,操作失败B、操作成功C、操作成功,但要给出警告信息D、将新记录的主键值更改为一个没有重复的值后插入,操作成功8、与模式串:‘_[^a-d]%’匹配的字符串是(A)。

sql刷题题库

sql刷题题库

一、选择题1.在SQL中,用于从数据库中选取数据的语句是?A.SELECT(正确答案)B.INSERTC.UPDATED.DELETE2.在SQL中,如果你想选择表中所有列的数据,你应该使用哪个符号来代替列名?A.*(正确答案)B.%C.#D.$3.假设你有一个名为"Employees"的表,其中包含"EmployeeID"和"EmployeeName"两列。

如果你想选择"EmployeeName"为"John Doe"的所有记录,你应该使用哪个SQL语句?A.SELECT * FROM Employees WHERE EmployeeName = 'John Doe'(正确答案)B.SELECT * FROM Employees WHERE EmployeeID = 'John Doe'C.SELECT EmployeeName FROM Employees WHERE EmployeeID = 'John Doe'D.SELECT EmployeeID FROM Employees WHERE EmployeeName = 'John Doe'4.在SQL中,哪个子句用于对结果集进行排序?A.ORDER BY(正确答案)B.GROUP BYC.HA VINGD.WHERE5.假设你有一个名为"Sales"的表,其中包含"SaleDate"和"SaleAmount"两列。

如果你想选择2023年的所有销售记录,并且结果按照"SaleDate"降序排列,你应该使用哪个SQL 语句?A.SELECT * FROM Sales WHERE YEAR(SaleDate) = 2023 ORDER BY SaleDate DESC(正确答案)B.SELECT * FROM Sales WHERE SaleDate = 2023 ORDER BY SaleDate ASCC.SELECT * FROM Sales WHERE YEAR(SaleDate) = 2023 ORDER BY SaleAmountDESCD.SELECT * FROM Sales WHERE SaleDate = 2023 ORDER BY SaleAmount ASC6.在SQL中,哪个函数用于计算某列的平均值?A.A VG(正确答案)B.SUMC.COUNTD.MAX7.假设你有一个名为"Products"的表,其中包含"ProductID"、"ProductName"和"ProductPrice"三列。

SQL作业参考答案

SQL作业参考答案

1、设有以下三个关系:学生关系:student(sno,sname,dep,age,sex)选课关系:sc(sno,cno,grade)课程关系:course(cno,cname,score)1)建数据库,在数据库中建立以上三个关系。

要求:学生关系中:sno为主键,sname不允许为空,age默认值18,sex取值范围’男’、’女’、默认为’男’。

课程关系中:cno为主键,cname不为空,在cname上建立唯一索引。

选课关系中:sno、cno组合为主键,grade允许为空,sno为外键(参照学生关系的sno,级联删除、级联修改),cno为外键(参照课程关系的cno,限制删除、限制修改)。

2)试用SQL的查询语句表示下列查询。

(1)检索学分score等于4的所有课程的课程号和课程名。

select cno,cnamefrom coursewhere score=4;(2)检索年龄在20和23岁之间的学生的学号与姓名。

select sno,snamefrom studentwhere age between 20 and 23 ;(3)检索Wang同学不学的课程的课程号。

select cnofrom coursewhere cno not in(select cnofrom sc,studentwhere sc.sno =student.snoand student.sname='Wang');(4)检索所有姓李的学生情况。

select *from studentwhere sname like '李%';(5)检索所有学生情况及其选课情况。

(可以用f1键查看左外联接)select student.*,sc.*from student left outer join scon student.sno = sc.sno;(6)检索所有选修了课程的学生情况和选课情况。

select student.*,sc.*from student , scwhere student.sno = sc.sno;(7)检索至少选修两门课程的学生学号和姓名。

SQL语句练习及答案

SQL语句练习及答案

sql语句练习题1数据库有如下四个表格:student(sno,sname,sage,ssex,sdpt) 学生表系表(dptno,dname)course(cno,cname, gradet, tno) 课程表sc(sno,cno,score) 成绩表teacher(tno,tname) 教师表要求:完成以下操作1.查询姓"欧阳"且全名为三个汉字的学生的姓名。

select sname from student where sname like “欧阳__‟;2.查询名字中第2个字为"阳"字的学生的姓名和学号。

select sname,sno from student where sname like '_阳%';3.查询所有不姓刘的学生姓名。

select sname,sno,ssexfrom studentwhere sname not like “刘%”;4.查询db_design课程的课程号和学分。

select cno,ccredit from coursewhere cname like 'db_design'5.查询以"db_"开头,且倒数第3个字符为i的课程的详细情况。

select * from course where cname like 'db%i_ _';6.某些学生选修课程后没有参加考试,所以有选课记录,但没有考试成绩。

查询缺少成绩的学生的学号和相应的课程号。

select sno,cno from sc where grade is null;7.查所有有成绩的学生学号和课程号。

select sno,cno from sc where grade is not null;8.查询计算机系年龄在20岁以下的学生姓名。

select sname from student where sdept= 'cs' and sage<20;9.查询选修了3号课程的学生的学号及其成绩,查询结果按分数降序排列。

sql的作业(简单查询)

sql的作业(简单查询)

SQL语法练习(一)使用scott/tiger 用户下的emp表(数据库自带的表)完成下列练习。

表的结构说明如下:雇员表(emp)NO 字段类型描述1 EMPNO NUMBER(4) 表示雇员编号,是唯一的编号表示雇员姓名2 ENAME VARCHAR2(10)3 JOB VARCHAR2(9) 工作职位4 MGR NUMBER(4) 雇员的领导编号DATE 雇佣日期5 HIREDATE6 SAL NUMBER(7,2) 月薪,工资7 COMM NUMBER(7,2) 奖金8 DEPTNO NUMBER(2) 部门编号1、查询部门号为30的所有雇员信息。

2、列出所有办事员(CLERK)的姓名,编号和部门编号。

3、找出奖金高于工资的雇员。

4、找出奖金高于工资60%的雇员。

5、找出部门10中所有经理(MANAGER)和部门20中所有办事员的信息。

6、找出部门10中所有经理(MANAGER),部门20中所有办事员,既不是经理又不是办事员但其薪资大于或等于2000的所有员工的信息。

7、找出有奖金发放员工的职位(职位不能重复)8、查询没有奖金或者奖金低于100的员工。

9、查询不带有"R"的员工的姓名。

10、显示员工的全部信息,按姓名排序。

11、显示员工的姓名和入职时间,根据入职时间,将最老的员工排放在最前面。

12、显示所有员工的姓名、工作和工资,按照工作的降序排序,若工作相同则按工资升序排序。

13、找出2月份入职的员工。

14、显示姓名含有字母"A"的员工的姓名。

sql作业编写

sql作业编写

好的,以下是一个简单的SQL作业:
1. 查询员工表中所有员工的姓名和工资。

解析:需要编写一个SELECT语句,从员工表中选择姓名和工资字段。

代码:
```sql
SELECT name, salary FROM employees;
```
2. 查询部门表中所有部门的名称和经理的姓名。

解析:需要编写一个SELECT语句,从部门表中选择名称和经理姓名字段。

代码:
```sql
SELECT department_name, manager_name FROM departments;
```
3. 查询员工表中年龄大于30的员工姓名、年龄和工资。

解析:需要编写一个SELECT语句,从员工表中选择姓名、年龄和工资字段,并使用WHERE子句过滤年龄大于30的员工。

代码:
```sql
SELECT name, age, salary FROM employees WHERE age > 30;
```
4. 查询员工表中工资高于平均工资的员工姓名和工资。

解析:需要编写一个SELECT语句,从员工表中选择姓名和工资字段,并使用HAVING 子句过滤工资高于平均工资的员工。

代码:
```sql
SELECT name, salary FROM employees WHERE salary > (SELECT AVG(salary) FROM employees);
```。

数据库作业(SQL 练习)

数据库作业(SQL 练习)

创建如下表:
学生基础表Student由学号(student_id)、姓名(student_ame)、性别(sex)、年龄(age)、所在系(sbjec 课程表Course由课程号(cource_id)、课程名(course_name)、学分(cource_credit)组成
学生成绩表StudScoreInfo由学号(student_id)、课程号(course_id)、成绩(score)组成
学校专业系代码表subject由由系代码(subject_id)和系名称(subject_name)组成
各表数据如下
1、用SQL语句完成创建表,并插入所有数据
2、使用关联子查询,求出每个系同学个数;输出 系代码,系名称,学生个数
3、列出每个学生的总分。

要求格式 学号,姓名,系名称,总分
4、列出每个课程最高分的获得者。

输出列:课程号,课程名,学号,姓名,成绩
5、列出文学系的学生选修的所有课程,及其平均分。

输出列:课程号,课程名,平均分
6、列出获得总学分超过4分的学生,成绩>=60分,才能获得该课程的学分。

输出列:学号,姓名,总学分
7、列出选修了所有课程的学生。

输出列:学号,姓名,
8、列出至少选修了语文和数学的所有学生。

输出列:学号,姓名
age)、所在系(sbject_id)组成
,姓名,总学分。

数据库SQL基础作业

数据库SQL基础作业

题21:
查询名字中第2个字为“小”或“大”字的学生的姓名和学号。
题22:
查询所有不姓“刘”的学生。
题23:
从学生表中查询学号的最后一位不是2,3,5的学生的情况。
题24:
查询无考试成绩的学生的学号和相应的课程号。
题25:
查询所有有考试成绩的学生的学号和课程号。
删除所有不及格学生的选课记录。
题62:
删除计算机系不及格学生的选课记录。
题16:
查询年龄不在20~23之间的学生的姓名,所在系和年龄。
题17:
查询信息系,数学系和计算机系学生的姓名和性别。
题18:
查询既不属于信息系,数学系,也不属于计算机系的学生的姓名和性别。
题19:
查询姓“张”的学生的详细信息。
题20:
查询学生表中姓“张”,姓“李”和姓“刘”的学生的情况。
题56:
在SC表中插入一新记录(9521105,c01),成绩暂缺。
八,更新数据。
题57:
将所有学生的年龄加1。
题58:
将“9512101”学生的年龄改为21岁。
题59:
将计算机系学生的成绩加5分。
九,删除数据。
题60:
删除所有学生的选课记录。
题61:
题6:
查询全体学生的学号与姓名。
题7:
查询全体学生的姓名,学号和所在系。
题8:
查询全体学生的记录。
题9:
查询全体学生的姓名及其出生年份。
题10:
查询全体学生的姓名和出生年份,比在出生年份列前加入一个列,此列的每行数据均为“Year of Birth”常量值。

查询及sql语句作业

查询及sql语句作业

查询以及sql语句作业第一部分查询8-1 查询年龄在20岁以上的女同学的学号、姓名、年龄信息.8-2 根据“学生”、“班级”表查询学生及班级信息,要求显示学生的“学号”、“姓名”及“班级名称”字段。

8-3 利用“查找重复项查询向导”创建查询,查找姓名相同的学生的信息。

8-4 使用“不匹配项查询向导”创建查询,找出没有成绩的学生名单。

8-5 查询所有学生的信息。

8-6 查询单科成绩在90分以上(含90分)的学生的姓名、课程名称和分数,并按分数降序排列。

8-7 查询年龄在20岁到22岁之间的学生的学号、姓名和年龄。

8-8 查询各门课程的平均分,要求查询结果包含课程名称、平均分。

8-9 建立一个参数查询,按输入的班级编号查找该班学生学号、姓名、出生日期和政治面貌等信息。

8-10 修改例8-9的条件,查找2006级的学生信息。

8-11 按课程名称查找该课程成绩在90分以上(含90分)的学生信息。

8-12 建立一个参数查询,按输入的分数段查找学生的姓名、课程名称和分数。

8-13 建立一个参数查询,按输入的“班级编号”及“课程名称”查询该班学生的姓名、课程名称及分数。

8-14 使用“设计视图”创建交叉表查询,汇总各学生各门课程的成绩,并计算每名学生的平均成绩,产生“学生成绩汇总表”。

要求表中增加一列显示学生的平均成绩。

8-15 使用“设计视图”创建交叉表查询,统计各班各门课程的的平均成绩,产生“班级课程平均成绩”汇总表。

要求查询结果以“班级名称”为行标题,以“课程名称”为列标题,行列交叉处显示“分数”的平均值。

8-16 将有不及格成绩的所有学生的“学号”、“姓名”、“班级”、“课程名称”和“分数”信息保存到“补考名单”表中。

8-17 将“教师”表中所有未婚教师的“教师编号”、“姓名”、“职称”和“联系电话”信息保存到一个名为“未婚教师”的新表中。

8-18 创建删除查询,删除“补考名单”表中所有“会计学基础”课程的补考信息。

(完整版)sql练习题+答案

(完整版)sql练习题+答案

(一)新建以下几个表student(学生表):其中约束如下:(1)学号不能存在相同的(2)名字为非空(3)性别的值只能是'男'或'女'(4)系包括这几个:信息系,计算机科学系,数学系,管理系,中文系,外语系,法学系(5)出生日期为日期格式(6)年龄为数值型,且在0~100 之间create table student (age smallint constraint d check ( age between 0cs(成绩表):其中约束如下:1)sno 和cno 分别参照student 和course 表中的sno,cno 的字段2)cj(成绩)只能在0~100之间,可以不输入值create table cs (sno smallint not null referencesstudent( sno ),- 定义成外键cno smallint not null referencescourse ( cno ), -定义成外键cj smallint constraint e check ( cj between 0 and100 ), 检查约束——cj( 成绩) 只能在~100 之间,可以不输入值constraint f primary key ( sno , cno ) ----- 定义学生学号和课程号为sc 表的主键)course 课程表)其约束如下:1)课程号( cno)不能有重复的2)课程名( cname)非空三)针对学生课程数据库查询(1)查询全体学生的学号与姓名。

(2)查询全体学生的姓名、学号、所在系,并用别名显示出结果。

(3)查询全体学生的详细记录。

select * from student(4)查全体学生的姓名及其出生年份。

select sname , birth from student(5)查询学校中有哪些系。

select distinct dept from student(6)查询选修了课程的学生学号。

sql练习题及答案

sql练习题及答案

sql练习题及答案SQL(Structured Query Language)是一种用于管理和操作关系型数据库的编程语言。

在这篇文章中,我们将提供一些SQL练习题及其答案,旨在帮助读者加深对SQL的理解,并提供实践操作的机会。

练习题一:学生表考虑一个名为"Students"的学生表,包含以下字段:- 学生编号(StudentID)- 学生姓名(StudentName)- 学生年级(Grade)- 学生所在学校(School)请使用SQL语句创建并插入示例数据到"Students"表中。

答案:```sqlCREATE TABLE Students (StudentID INT,StudentName VARCHAR(50),Grade INT,School VARCHAR(50));INSERT INTO Students (StudentID, StudentName, Grade, School)VALUES (1, '张三', 11, '中学A'),(2, '李四', 10, '中学B'),(3, '王五', 10, '中学A'),(4, '赵六', 12, '中学C');```练习题二:查询学生表信息请编写SQL查询语句,查询出所有学生的姓名和所在学校。

答案:```sqlSELECT StudentName, School FROM Students;```练习题三:更新学生信息假设有一位新生加入学校,学生姓名为"李华",年级为11,学校为"中学B"。

请编写SQL语句将该学生信息插入到学生表中。

答案:```sqlINSERT INTO Students (StudentName, Grade, School)VALUES ('李华', 11, '中学B');```练习题四:删除学生信息假设"赵六"这位学生已经转学离开学校,需要从学生表中将其信息删除。

创建sql 作业的步骤

创建sql 作业的步骤

创建sql 作业的步骤
1.打开企业管理器→管理→ SQL Server代理→作业
2.右击右边空白处,在弹出菜单中选择新建作业
3.选择常规选项栏,在名称栏里输入:Jxtbackup,其他的使用默认值即可,如图1所示
4.选择步骤选项栏,然后点击新建,在弹出的对话框里选择常规选项,然后在步骤名栏里输
入:cleantable;类型:TSQL,数据库:carddb,命令:exec JXT_CleanRecords最后点击确定.如图2所示
5.选择调度选项栏,点击新建调度,在名称栏里输入:backupcall,调度类型选择反复出现,然后
单击更改,此时会弹出新的对话框如图3所示
在新的对话框的发生频率栏里选中每月选项,在每月选项栏中选择第二个即第1个星期日,每3个月.如图4所
示,
然后确定.
6.在左边的树型目录中右击QL Server代理→启动,接着在选择作业,此时右边会出现我们
刚才创建的作业jxtbackup,选中它右击→启动作业即可.。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. 写出下列前两个小题的每条SQL查询语句完成的功能,后三小题根据每种功能要求写出相应的SQL查询语句(每小题2分,共10分)。

在名称为图书管理系统的数据库中包含有图书、出版社二个表,它们的定义分别为:
图书(ISBN char(7), 书名char(20), 作者char(8), 版次int,价格int,出版社编号char(19), 出版日期date,库存量int) 出版社(出版社编号char(24), 出版社名称char(10), 联系人char(8), 联系电话char(15),地址char(50))
(1) SELECT ISBN, 书名, 出版社名称, 地址
FROM图书,出版社
WHERE价格>=30 and出版社名称=”科技出版社” and图书. 出版社编号=出版社.出版社编号
答案:查询价格大于等于30元且出版社是“科技出版社”的图书
(2) SELECT出版社编号, COUNT(*) AS 数量
FROM 出版社
GROUP BY出版社编号
ORDER BY数量
答案:将出版社的数量由小到大进行排序()
(3) 利用SQL语句将“图书”表中“出版社编号”字段的长度改为6。

答案:alter table 图书
(4) 查询图书“价格”在20元到40元之间(包括20元和40元)的图书,并输出书名,作者,版次和出版社名称。

答案:select 书名,作者,版次,出版社名称
From 图书
Where 价格between 20 and 40
(5) 创建一个更新查询,将“图书”表中“出版社编号”为“G00002”的“价格”字段值加10。

答案:Update 图书
Set [价格]+10
WHERE 出版社编号=G00002
2.本题用到下面三个关系表:
1. CARD 借书卡。

CNO 卡号,NAME 姓名,CLASS 班级
2. BOOKS图书。

BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数
3. BORROW借书记录。

CNO 借书卡号,BNO 书号,RDATE 还书日期
完成以下sql语句
写出建立BORROW表的SQL语句,要求定义主码完整性约束和引用完整性约束。

Create table BORROW
(CNO int PRIMARY KEY,
BNO int foreign key,
RDATE datetime,
1.找出借书超过5本的读者,输出借书卡号及所借图书册数。

Select CNO,
2.查询过期未还图书,输出借阅者(卡号)、书号及还书日期
SELECT CNO BNO RDATE
FROM BORROW
Where (year (now())-year(RDATE)>=0
3.查询现有图书中价格最高的图书,输出书名及作者
Select BNO ,AUTHOR
From BOOKS
WHERE order by PRICE desc
4.将"C01"班同学所借图书的还期都延长一周
UPDATE CLASS
SET [RDATE]
本题用到下面三个关系表:
CARD 借书卡。

CNO 卡号,NAME 姓名,CLASS 班级
BOOKS 图书。

BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数
BORROW 借书记录。

CNO 借书卡号,BNO 书号,RDATE 还书日期
备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。

要求实现如下15个处理:
1.写出建立BORROW表的SQL语句,要求定义主码完整性约束和引用完整性约束。

2.找出借书超过5本的读者,输出借书卡号及所借图书册数。

3.查询借阅了"水浒"一书的读者,输出姓名及班级。

4.查询过期未还图书,输出借阅者(卡号)、书号及还书日期。

5.查询书名包括"网络"关键词的图书,输出书号、书名、作者。

6.查询现有图书中价格最高的图书,输出书名及作者。

7.查询当前借了"计算方法"但没有借"计算方法习题集"的读者,输出其借书卡号,并按卡号降序排序输出。

8.将"C01"班同学所借图书的还期都延长一周。

9.从BOOKS表中删除当前无人借阅的图书记录。

10.如果经常按书名查询图书信息,请建立合适的索引。

11.在BORROW表上建立一个触发器,完成如下功能:如果读者借阅的书名是"数据库技术及应用",就将该读者的借阅记录保存在BORROW_SAVE 表中(注ORROW_SAVE表结构同BORROW表)。

12.建立一个视图,显示"力01"班学生的借书信息(只要求显示姓名和书名)。

13.查询当前同时借有"计算方法"和"组合数学"两本书的读者,输出其借书卡号,并按卡号升序排序输出。

14.假定在建BOOKS表时没有定义主码,写出为BOOKS表追加定义主码的语句。

15.对CARD表做如下修改:
a. 将NAME最大列宽增加到10个字符(假定原为6个字符)。

b. 为该表增加1列NAME(系名),可变长,最大20个字符。

1. 写出建立BORROW表的SQL语句,要求定义主码完整性约束和引用完整性约束
CREATE TABLE BORROW(
CNO int FOREIGN KEY REFERENCES CARD(CNO),
BNO int FOREIGN KEY REFERENCES BOOKS(BNO),
RDATE datetime,
PRIMARY KEY(CNO,BNO))
2. 找出借书超过5本的读者,输出借书卡号及所借图书册数
SELECT CNO,借图书册数=COUNT(*) FROM BORROW
GROUP BY CNO HAVING COUNT(*)>5
3. 查询借阅了"水浒"一书的读者,输出姓名及班级
SELECT * FROM CARD c WHERE EXISTS(
SELECT * FROM BORROW a,BOOKS b WHERE a.BNO=b.BNO AND b.BNAME=N'水浒' AND O=O)
4. 查询过期未还图书,输出借阅者(卡号)、书号及还书日期
SELECT * FROM BORROW WHERE RDATE<GETDATE()
5. 查询书名包括"网络"关键词的图书,输出书号、书名、作者
SELECT BNO,BNAME,AUTHOR FROM BOOKS WHERE BNAME LIKE N'%网络%'
6. 查询现有图书中价格最高的图书,输出书名及作者
SELECT BNO,BNAME,AUTHOR FROM BOOKS WHERE PRICE=(SELECT MAX(PRICE) FROM BOOKS)
7. 查询当前借了"计算方法"但没有借"计算方法习题集"的读者,输出其借书卡号,并按卡号降序排序输出
SELECT O FROM BORROW a,BOOKS b
WHERE a.BNO=b.BNO AND b.BNAME=N'计算方法' AND NOT EXISTS(
SELECT * FROM BORROW aa,BOOKS bb WHERE aa.BNO=bb.BNO AND bb.BNAME=N'计算方法习题集' AND O=O) ORDER BY O DESC
8. 将"C01"班同学所借图书的还期都延长一周
UPDATE b SET RDATE=DATEADD(Day,7,b.RDATE) FROM CARD a,BORROW b WHERE O=O AND a.CLASS=N'C01'。

相关文档
最新文档