SQL作业
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语言课后练习岳阳市湖湘认证培训学校学院路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练习题(做完你就是⾼⼿)补充作业⼀设有三个关系: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单选试题及答案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 作业训练大全
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数据库》大作业一、单项选择题(在每小题的四个备选答案中,有且仅有一个正确答案,请将正确答案的代号写在题干后的括号内。
答案选错或未选者,该题不得分。
每小题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刷题题库
一、选择题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作业参考答案
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语句练习题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语法练习(一)使用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作业:
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);
```。
第5章-SQL语言 作业和思考
一、单项选择题:1.SQL语言是( )的语言,容易学习。
A.过程化B. 非过程化C.格式化D. 导航式2.关系操作方式的特点是( )操作。
A. 导航方式B. 一次一集合方式C.一次一记录方式 D. 记录或集合方式3.下列关于基本表与存储文件之间关系的叙述中,正确的是( )。
A. 一个基本表只能存储于一个文件中,一个存储文件中也只能存储一个基本表B. 一个基本表只能存储于一个文件中,但一个存储文件中可存储多个基本表C. 一个基本表可以存储于一个或多个文件中,但一个存储文件中只能存储一个基本表D. 一个基本表可以存储于一个或多个文件中,一个存储文件中也可以存储一个或多个基本表4.视图是从一个或多个基本表(视图)导出的表。
它相当于三级模式结构中的( )A. 外模式B. 模式C.内模式 D. 存储模式5.SQL的GRANT与REVOKE命令属于数据库保护中的( )控制。
A.完整性 B. 安全性 C. 并发控制 D. 恢复机制6.1986年,( )被定为关系数据库标准语言。
A. 关系代数B. 关系演算C.SQL语言D.QBE7.在SQL语言中授权的操作是通过( )语句实现的。
A. CREATE B.REVOKE C.GRANT D.INSERT8.SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE,DELETE等.其中最重要的,也是使用最频繁的语句是( )。
A. DELETEB. INSERTC. UPDATED. SELECT9.SQL语言中,实现数据检索的语句是( )。
A.SELECT B.INSERT C. UPDATE D.FIND10.下列SQL语句中,修改表结构的是( )。
A. ALTERB. CREATEC.UPDATED. DELETE11.实体完整性约束和SQL语言中的()相对应。
A.primary key B.foreign key C.check D.unique12.参照完整性约束和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基础作业
题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语句作业第一部分查询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练习题+答案
(一)新建以下几个表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(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 作业的步骤
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,选中它右击→启动作业即可.。
SQL作业
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 [价格]+10WHERE 出版社编号=G000022.本题用到下面三个关系表:1. CARD 借书卡。
CNO 卡号,NAME 姓名,CLASS 班级2. BOOKS图书。
BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数3. BORROW借书记录。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.
查询客户表中的所有记录; 2.
从订购单表中查询客户号信息(哪些客户有订购单)。
3.
查询单价在X 元以上(含)的产品信息。
4.
查询单价在X 元以上(不含)的某产品(按产品名称查询)信息。
5.
查询单价在X 元以上(不含)的某两种产品(按产品名称查询)信息。
6.
查询有某年某月订购单的客户名称、联系人、电话号码和订单号信息。
7.
查询有某产品(按产品名称查询)订货的客户的名称、联系人和电话号码信息。
8.
查询有某产品(按产品名称查询)订购需求的订购单明细记录。
9. 查询所有订购数量(即订购明细中每个订购项目的数量)都在X 元以上的订购单的
信息。
10. 找出和某产品(按产品名称查询)同等价位的所有产品信息。
11. 查询单价范围在X 元到Y 元范围内的产品信息。
12. 从客户表 中查询出客户名称中有“XX‘二字的客户信息(使用LIKE 运算符)。
13. 从客户表 中查询出客户名称中没有“XX‘二字的客户信息(使用NOT LIKE 运算符)。
14. 按产品的单价升序列出全部产品信息。
15. 先按产品名称排序,在按单价排序列出全部产品信息。
16. 从产品表中查出共有几种产品。
17. 从订购明细表中查询某产品(按产品名称)的订购总数。
18. 计算某产品(按产品名称)所有订购的总金额。
19. 求所有订购单的平均金额,在查询结果中列出订购单的个数和平均金额。
20. 求每个订购单订购的项目数和总金额。
21. 求每个客户包含了某产品(按产品名称)订购的订单号及其最高金额和最低金额。
22. 求至少有两个订购项目的订购单的平均金额。
23. 找出尚未最后确定订购单(即订购日期为空值的记录)的有关客户信息(客户的名
称、联系人和电话号码)和订单号。
24. 找出在某年某月某日之后签定的订购单的客户信息(客户名称、联系人和电话号码)、
订单号和订购日期。
25. 列出每类产品(相同名称)具有最高单价的产品信息(产品号,名称,规格说明和
单价),提示:使用内外层互相关嵌套查询。
26. 确定哪些客户目前没有订购单(使用谓词NOT EXISTS )。
27. 确定目前有订购单的客户信息(使用谓词EXISTS )。
28. 查询符合条件的某产品(按产品名称)信息,产品的单价达到了任意一款某产品(按
产品 图1 订单管理数据库
产品名称)单价的一半(使用ANY或SOME量词)。
29.查询符合条件的某产品(按产品名称)信息,产品的单价大于任何一款某产品(按
产品名称)的单价(使用ALL量词)。
30.设计如下的连接操作,并分析各自的特点:广义笛卡儿积、内连接、左连接、右连
接、全连接。