SQL命令题答案

合集下载

(完整版)sql语句练习题及答案

(完整版)sql语句练习题及答案

(完整版)sql语句练习题及答案⼀在数据库 school 中建⽴student , sc, course 表。

学⽣表、课程表、选课表属于数据库School ,其各⾃的数据结构如下:学⽣Student (Sno,Sname,Ssex,Sage,Sdept)课程表course(Cno,Cname,Cpno,Ccredit)学⽣选课SC(Sno,Cno,Grade)⼆设定主码1 Student表的主码:sno2 Course表的主码:cno3 Sc表的主码:sno,cno1写出使⽤ Create Table 语句创建表 student , sc, course 的SQL语句23 删除student表中的元组4在数据库school中删除关系student5在student表添加属性sbirthdate 类型datetimeDelete1 删除所有JSJ 系的男⽣delete from Student where Sdept=’JSJ’ and Ssex=’男’;2 删除“数据库原理”的课的选课纪录delete from SC where Cno in (select Cno fromCourse where Cname=’数据库原理’);Update1 修改0001 学⽣的系科为: JSJ2 把陈⼩明的年龄加1岁,性别改为⼥。

2 修改李⽂庆的1001课程的成绩为93 分3 把“数据库原理”课的成绩减去1分Select 查询语句⼀单表1查询年龄在19⾄21岁之间的⼥⽣的学号,姓名,年龄,按年龄从⼤到⼩排列。

2查询姓名中第2个字为“明”字的学⽣学号、性别。

3查询 1001课程没有成绩的学⽣学号、课程号4查询JSJ 、SX、WL 系的年龄⼤于25岁的学⽣学号,姓名,结果按系排列5按10分制查询学⽣的sno,cno,10分制成绩(1-10分为1 ,11-20分为2 ,30-39分为3,。

90-100为10)6查询 student 表中的学⽣共分布在那⼏个系中。

sql语句期末试题及答案

sql语句期末试题及答案

sql语句期末试题及答案```一、单项选择题(共10题,每题2分,共20分)1. 在SQL中,下列哪个命令用于创建数据库?A. CREATE DATABASEB. CREATE TABLEC. CREATE INDEXD. CREATE VIEW答案:A2. 在SQL中,用于删除表的命令是?A. DELETEB. DROP TABLEC. REMOVE TABLED. TRUNCATE TABLE答案:B3. 在SQL中,用于在表中插入新记录的命令是?A. INSERT INTOB. UPDATEC. ADDD. SET答案:A4. 下列语句中,哪一个用于从表中选择特定的行?A. SELECTB. FILTERC. SEARCHD. FIND答案:A5. 在SQL中,用于更新表中记录的命令是?A. MODIFYB. CHANGEC. UPDATED. ALTER答案:C6. 在SQL中,用于删除表中记录的命令是?A. DELETEB. DROPC. REMOVED. TRUNCATE答案:A7. 下列哪个关键字用于从表中选择唯一的记录?A. UNIQUEB. DISTINCTC. UNIQUEKEYD. PRIMARY答案:B8. 在SQL中,用于指定表的新名称的命令是?A. RENAME TABLEB. ALTER TABLEC. MODIFY TABLED. CHANGE TABLE答案:A9. 在SQL中,用于修改表中列定义的命令是?A. RENAME COLUMNB. ALTER COLUMNC. MODIFY COLUMND. CHANGE COLUMN答案:C10. 下列哪个操作符用于在WHERE子句中判断一个值是否在指定的列表中?A. INB. NOTC. LIKED. BETWEEN答案:A二、判断题(共5题,每题2分,共10分)1. 在SQL中,SELECT语句用于删除表中的记录。

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语句面试题及答案

sql语句面试题及答案

sql语句面试题及答案一、基本查询1. 简单查询请问如何查询一个表中的所有记录?答:可以使用SELECT * FROM table_name; 命令来查询表中的所有记录。

2. 条件查询如果我只想查询特定条件下的记录,例如查询年龄大于30的员工信息,应该怎么做?答:可以使用WHERE子句来进行条件查询,语句如下:SELECT * FROM employees WHERE age > 30;3. 限制查询结果在查询时,如果只想获取前5条记录,应该如何操作?答:可以使用LIMIT关键字来限制查询结果的数量,语句如下:SELECT * FROM table_name LIMIT 5;二、聚合查询1. 计数如何计算某个表中的记录数?答:可以使用COUNT()函数来计算表中的记录数,语句如下:SELECT COUNT(*) FROM table_name;2. 求和如果需要计算某列的总和,例如计算销售总额,应该怎么做?答:可以使用SUM()函数来计算某列的总和,语句如下:SELECT SUM(sales_amount) FROM sales_table;3. 平均值如何求某列的平均值,比如平均工资?答:可以使用AVG()函数来计算某列的平均值,语句如下:SELECT AVG(salary) FROM employees;三、分组查询1. 分组统计请问如何按照某个字段进行分组,并计算每个分组的记录数?答:可以使用GROUP BY子句来进行分组统计,语句如下:SELECT department, COUNT(*) FROM employees GROUP BY department;2. 多列分组如果需要按照多个字段进行分组,应该如何操作?答:可以在GROUP BY子句中列出所有需要分组的字段,语句如下:SELECT department, job_title, COUNT(*) FROM employees GROUP BY department, job_title;3. 分组聚合运算在分组查询中,如何对每个分组执行聚合运算,例如计算每个部门的最高工资?答:可以使用GROUP BY子句结合聚合函数来进行分组聚合运算,语句如下:SELECT department, MAX(salary) AS max_salary FROM employees GROUP BY department;四、连接查询1. 内连接如何查询两个表中有关联的记录?答:可以使用INNER JOIN来查询两个表中有关联的记录,语句如下:SELECT * FROM table1 INNER JOIN table2 ON mon_field = mon_field;2. 左连接如果需要查询左表的所有记录,以及右表中与之关联的记录,没有关联的则显示NULL,应该怎么做?答:可以使用LEFT JOIN来实现,语句如下:SELECT * FROM table1 LEFT JOIN table2 ON mon_field = mon_field;3. 右连接请问如何查询右表的所有记录,以及左表中与之关联的记录?答:可以使用RIGHT JOIN来实现,语句如下:SELECT * FROM table1 RIGHT JOIN table2 ON mon_field = mon_field;五、子查询1. 非相关子查询在查询时,如果需要在WHERE子句中使用一个SELECT语句作为条件,应该怎么做?答:可以使用非相关子查询来实现,语句如下:SELECT * FROM table1 WHERE column_name IN (SELECT column_name FROM table2);2. 相关子查询如果子查询需要引用外部查询的列,应该怎么做?答:可以使用相关子查询,在子查询中使用外部查询的列,语句如下:SELECT * FROM table1 WHERE column_name = (SELECT column_name FROM table2 WHERE related_column = table1.related_column);六、更新和删除操作1. 更新数据请问如何使用SQL语句来更新表中的记录?答:可以使用UPDATE语句来更新表中的记录,语句如下:UPDATE table_name SET column1 = value1, column2 = value2 WHERE condition;2. 删除数据如果需要删除表中的某些记录,应该如何操作?答:可以使用DELETE语句来删除记录,语句如下:DELETE FROM table_name WHERE condition;七、排序和索引1. 排序查询结果如何对查询结果进行排序?答:可以使用ORDER BY子句对查询结果进行排序,语句如下:SELECT * FROM table_name ORDER BY column_name ASC/DESC;2. 创建索引为了提高查询效率,如何为表中的列创建索引?答:可以使用CREATE INDEX语句来创建索引,语句如下:CREATE INDEX index_name ON table_name (column_name);通过以上问题的探讨,我们了解了SQL语句在面试中常见的问题及答案。

sql笔试题及答案

sql笔试题及答案

sql笔试题及答案1. 题目1:查询员工表中工资大于5000的员工信息,并按照工资降序排列。

答案:SELECT * FROM 员工表 WHERE 工资 > 5000 ORDER BY 工资DESC;解析:使用SELECT语句查询员工表中满足工资大于5000的记录,并使用ORDER BY子句按照工资字段降序排列。

2. 题目2:统计订单表中每个客户的订单总数,并按照订单总数升序排列。

答案:SELECT 客户, COUNT(订单编号) AS 订单总数 FROM 订单表GROUP BY 客户 ORDER BY 订单总数 ASC;解析:使用SELECT语句查询订单表中每个客户的订单总数,并使用GROUP BY子句按照客户字段进行分组,COUNT函数用于统计订单编号,AS关键字用于为统计结果起别名,ORDER BY子句按照订单总数字段升序排列。

3. 题目3:查询学生表中不重复的学生姓名和对应的年龄。

答案:SELECT DISTINCT 学生姓名, 年龄 FROM 学生表;解析:使用SELECT DISTINCT语句查询学生表中不重复的学生姓名和对应的年龄。

4. 题目4:查询订单表中订单金额最大的订单信息。

答案:SELECT * FROM 订单表 WHERE 订单金额 = (SELECT MAX(订单金额) FROM 订单表);解析:使用SELECT语句查询订单表中订单金额等于最大订单金额的订单信息,使用子查询和MAX函数找出最大订单金额。

5. 题目5:查询销售表中每个月份的总销售金额。

答案:SELECT DATE_FORMAT(销售日期, '%Y-%m') AS 月份, SUM(销售金额) AS 总销售金额 FROM 销售表 GROUP BY DATE_FORMAT(销售日期, '%Y-%m');解析:使用SELECT语句查询销售表中每个月份的总销售金额,使用DATE_FORMAT函数将销售日期格式化成年月的形式,并使用SUM函数统计销售金额,使用GROUP BY子句按照月份进行分组。

大学sql数据库试题及答案

大学sql数据库试题及答案

大学sql数据库试题及答案一、选择题(每题2分,共20分)1. SQL中用于查询数据的命令是:A. INSERTB. UPDATEC. SELECTD. DELETE答案:C2. 在SQL中,以下哪个关键字用于创建新表?A. CREATEB. INSERTC. SELECTD. DROP答案:A3. 以下哪个选项不是SQL数据类型?A. INTB. VARCHARC. DATED. FILE答案:D4. SQL语句中,用于更新数据的命令是:A. SELECTB. INSERTC. UPDATED. DELETE答案:C5. 在SQL中,哪个关键字用于删除表?A. DROPB. REMOVEC. DELETED. ERASE答案:A6. SQL中用于添加数据的命令是:A. INSERTB. CREATEC. UPDATED. ADD答案:A7. 在SQL中,以下哪个关键字用于查询特定列的数据?A. WHEREB. SELECTC. FROMD. ORDER BY答案:B8. 以下哪个选项不是SQL中的聚合函数?A. COUNTB. AVGC. MAXD. FIND答案:D9. SQL中用于删除数据的命令是:A. SELECTB. INSERTC. UPDATED. DELETE答案:D10. 在SQL中,以下哪个关键字用于从数据库中删除表?A. DROPB. REMOVEC. ERASED. DELETE答案:A二、填空题(每题2分,共20分)1. 在SQL中,使用________关键字可以为表创建索引。

答案:CREATE INDEX2. SQL中的________子句用于指定查询结果的排序方式。

答案:ORDER BY3. 使用SQL的________函数可以计算表中行的数量。

答案:COUNT4. 在SQL中,________关键字用于指定查询条件。

答案:WHERE5. SQL中的________函数用于计算平均值。

3-SQL语句练习题参考答案

3-SQL语句练习题参考答案

标准SQL语言一、选择题1、下面关于SQL标准的叙述中,不正确的是(B )。

A.SQL语言是集数据定义、数据操纵、数据控制功能为一体的语言。

B.SQL语言是一种高度过程化的语言。

C.SQL标准规定数据库是按三级模式结构构建。

D.SQL语言是关系型数据库的标准语言。

E.SQL语言是面向集合的语言。

2、SQL语言中,修改基本表结构的语句是( B )。

A.UPDATE B.ALTER C.DROP D.CREATE3、SQL语言中,删除基本表结构的语句是( C )。

A.DELETE B.ALTER C.DROP D.CREATE4、下面关于“视图”的叙述中,不正确的是( C )。

A.视图是一种“虚表”,它的数据被存放在基本表中。

B.视图提供了逻辑数据独立性。

C.不能通过视图来更新数据库中的数据。

D.视图能提供对数据的安全保护。

5、下面关于SELECT语句的叙述中,不正确的是(C)。

A.SELECT产生的结果是一个集合。

B.HA VING子句必须与GROUP BY子句一起使用。

C.可以省略FROM子句。

D.可以省略WHERE子句。

二、填空题1、在使用INSERT语句向一个表中插入元组时,“值列表”中值的个数、(顺序)、类型必须与“列名表”保持一致。

2、在向一个表中插入元组时,对于未指定默认值且(不能取空值)的字段必须赋值。

3、向表中插入元组时,主键的值不能取(NULL )值。

4、在使用DELETE语句时,如果不指定(where 条件)就会将整个表的数据删除。

5、视图是从一个或几个基本表或(视图)导出的表,它与基本表不同,是一个虚表。

三、判断题1、SQL语言是面向集合操作的语言。

√2、可以通过视图来查询数据,但不能通过视图来更新数据库中的数据。

×3、在SQL Server数据库系统中,向表中插入元组时,系统自动为具有标识属性的列赋值。

√4、在SQL Server数据库系统中,向表中插入元组时,对取值类型为timestamp(时间戳)的列不能赋值,系统自动赋值。

SQL查询习题及答案

SQL查询习题及答案

36.设教学用的四个基本表(S,C,T,SC)(2)查询年龄大于23岁的女同学的学号和姓名select 姓名,学号from swhere 性别='女' and 年龄>23(3)查询至少选修了刘老师所讲授课程中的一门课程的女同学姓名select s.姓名from s,scwhere s.性别='女'and s.学号=sc.学号and sc.课程编号in(select c.课程编号from c,twhere c.教师编号=t.教师编号and t.姓名='刘%')(4)查询至少选修了2门课程的学生学号select sc.学号from scgroup by 学号having count(课程编号)>2(5)查询全部学生都选修的课程号与课程名select c.课程编号,c.课程名称from c,scwhere sc.课程编号=c.课程编号and sc.学号=(select distinct s.学号from s)(6)计算机系每个教师讲授的课程号select t.教师编号,课程编号from c,twhere t.所在系='计算机系(7)查询没有选修过任何一门课程的学生的学号select s.学号from swhere s.学号not in(select distinct sc.学号from sc)(10)统计个系教师的人数select count (教师编号)from tgroup by 所在系(11)统计出教师人数超过10人的系的名称select t.所在系from tgroup by 所在系having count(教师编号)>10(12)在选课表SC中查询成绩为NULL的学生的学号和课程号select 学号课程编号from scwhere 成绩='NULL'(13)姓王的同学的年龄、姓名、选课名称、成绩select 年龄,姓名,课程名称,成绩from s,c,scwhere s.学号=sc.学号and c.课程编号=sc.课程编号and s.姓名='王%'(14)查询年龄大于女同学平均年龄的男同学姓名和年龄select 姓名,年龄from swhere 性别='男' and 年龄>(select avg(年龄)from swhere 性别='女')37.在数据库{USER、ORDER}中,用户需要查询“所有于2009年5月25日下订单的女顾客姓名”。

sql期末考试题及答案

sql期末考试题及答案

sql期末考试题及答案SQL期末考试题及答案一、选择题(每题2分,共20分)1. 在SQL中,用于查询语句的关键字是:A. SELECTB. INSERTC. UPDATED. DELETE答案:A2. 下列哪个SQL语句用于删除表中的记录?A. DROP TABLEB. DELETE FROMC. REMOVED. ERASE答案:B3. 在SQL中,用于创建新表的关键字是:A. CREATE TABLEB. NEW TABLEC. ADD TABLED. START TABLE答案:A4. SQL中的主键约束保证表中:A. 所有数据都是唯一的B. 每行数据都是唯一的C. 每列数据都是唯一的D. 只有一列数据是唯一的答案:B5. SQL中的外键约束用于:A. 确保数据的唯一性B. 确保数据的完整性C. 允许数据的重复D. 限制数据的访问答案:B6. 在SQL中,以下哪个操作用于更新表中的记录?A. UPDATEB. MODIFYC. CHANGED. ALTER答案:A7. SQL中的GROUP BY子句用于:A. 排序结果B. 分组结果C. 过滤结果D. 限制结果答案:B8. SQL中的HAVING子句与WHERE子句的区别是:A. HAVING用于过滤分组后的数据B. WHERE用于过滤分组前的数据C. HAVING和WHERE功能相同D. HAVING用于排序数据答案:A9. SQL中的INNER JOIN用于:A. 连接两个表中所有匹配的行B. 连接两个表中不匹配的行C. 只显示第一个表的数据D. 只显示第二个表的数据答案:A10. 在SQL中,以下哪个操作用于添加新的记录到表中?A. INSERT INTOB. ADD INTOC. PUT INTOD. ENTER INTO答案:A二、简答题(每题10分,共30分)1. 解释SQL中的事务是什么,并给出事务的四个基本属性(ACID)。

SQL命令题答案

SQL命令题答案

1、一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)注意:基本操作题为4道SQL题,请将每道题的SQL命令粘贴到文件,每条命令占一行,第1道题的命令是第1行,第2道题的命令是第2行,以此类推;如果某道题没有做相应行为空。

在考生文件夹下完成下列操作:1、利用SQL SELECT命令将表复制到。

SELECT * FROM stock_sl INTO TABLE stock_bk2、利用SQL INSERT命令插入记录("600028",, , 5500)到表。

INSERT INTO stock_bk VALUES ("600028",,,5500)3、利用SQL UPDATE命令将表中"股票代码"为"600007"的股票"现价"改为。

UPDATE stock_bk SET 现价= WHERE 股票代码="600007")4、利用SQL DELETE命令删除表中"股票代码"为"600000"的股票。

DELETE FROM stock_bk WHERE 股票代码="600000"2.98、二、简单应用(2小题,每题20分,计40分)在考生文件夹下完成如下简单应用:1. 用SQL语句对自由表"教师"完成下列操作:将职称为"教授"的教师新工资一项设置为原工资的120%,其他教师的新工资与原工资相等;插入一条新记录,该教师的信息:姓名"林红",职称"讲师",原工资10000,新工资10200,同时将你所使用的SQL语句存储于新建的文本文件中(两条更新语句,一条插入语句,按顺序每条语句占一行)。

UPDATE 教师SET 新工资=原工资* WHERE 职称="教授"UPDATE 教师SET 新工资=原工资* WHERE 职称#"教授"INSERT INTO 教师VALUES ("林红","讲师",10000,10200)3.112、一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)在考生文件夹下完成如下操作,并将相应的SQL语句存储在文件中:1.用SQL INSERT语句插入元组("p7","PN7",1020)到"零件信息"表(注意不要重复执行插入操作)。

sql上机题带答案

sql上机题带答案

--1、选择部门30中的雇员select * from emp where deptno=30;2、列出所有办事员的姓名、编号和部门select ename,empno,dname from emp e inner join dept d on e.deptno = d.deptno where job=upper('clerk’);3、找出佣金高于薪金的雇员select * from emp where comm>sal;4、找出佣金高于薪金60%的雇员select * from emp where comm>sal*0.65、找出部门10中所有经理和部门20中的所有办事员的详细资料select * from emp where (deptno=10 and job=upper('manager')) or (deptno=20 and job=upper('clerk '));6、找出部门10中所有经理、部门20中所有办事员,既不是经理又不是办事员但其薪金>=2000的所有雇员的详细资料select * from emp where (deptno=10 and job=upper('manager')) or (deptno=20 and job=upper('clerk ')) or (job<>upper(‘manager’) and job<>upper(‘clerk’) and sal>=2000)7、找出收取佣金的雇员的不同工作select distinct job from emp where comm>0;8、找出不收取佣金或收取的佣金低于100的雇员select * from emp where nvl(comm,0)<100;9、显示正好为6个字符的雇员姓名select ename from emp where length(ename)=610、显示不带有'R'的雇员姓名Select ename from emp where ename not like ‘%R%’;Select ename from emp where instr(ename,’R’)=0;11、显示所有雇员的姓名的前三个字符select substr(ename,1,3) from emp12、显示雇员的详细资料,按姓名排序Select * from emp order by ename13、显示雇员姓名,根据其服务年限,将最老的雇员排在最前面Select ename from emp order by hiredate14、显示所有雇员的姓名、工作和薪金,按工作的降序顺序排序,而工作相同时按薪金升序Select ename,job,sal from emp order by job desc ,sal asc15、显示所有雇员的姓名和加入公司的年份和月份,按雇员受雇日所在月排序,将最早年份的项目排在最前面select ename,to_char(hiredate,'yyyy'),to_char(hiredate,'mm') from emp order by hiredate asc16、显示在一个月为30天的情况下所有雇员的日薪金select ename,sal/30 from emp;17、找出在(任何年份的)2月受聘的所有雇员select * from emp where to_char(hiredate,'mm')='02';18、对于每个雇员,显示其加入公司的天数select ename,sysdate-hiredate from emp19、显示姓名字段的任何位置,包含 "A" 的所有雇员的姓名select ename from emp where ename like '%A%';select ename from emp where instr(ename,’A’,1)>0;二、1、列出至少有一个雇员的所有部门select distinct dname from dept where deptno in (select distinct deptno from emp);2、列出薪金比"SMITH"多的所有雇员select ename,sal from emp where sal>(select sal from emp whereename=upper('smith'));3、列出所有雇员的姓名及其直接上级的姓名select e.ename,m.ename from emp e,emp m where e.mgr=m.empno(+);4、列出入职日期早于其直接上级的所有雇员select ename from emp e where hiredate<(select hiredate from emp where empno=e.mgr);5、列出部门名称和这些部门的雇员,同时列出那些没有雇员的部门select dname,ename from dept d left join emp e on d.deptno=e.deptno;6、列出所有“CLERK”(办事员)的姓名及其部门名称select ename,dname from emp e left join dept d on e.deptno=d.deptno where job=upper('clerk');7、列出各种工作类别的最低薪金,显示最低薪金大于1500的记录select job,min(sal) from emp group by job having min(sal)>1500;8、列出从事“SALES”(销售)工作的雇员的姓名,假定不知道销售部的部门编号select ename from emp where deptno = (select deptno from dept wheredname=uppder('SALES'))9、列出薪金高于公司平均水平的所有雇员select ename from emp where sal>(select avg(sal) from emp);10、列出与“SCOTT”从事相同工作的所有雇员select ename from emp where job=(select job from emp whereename=upper('scott'));11、列出某些雇员的姓名和薪金,条件是他们的薪金等于部门30中任何一个雇员的薪金select ename,sal from emp where sal in (select sal from emp where deptno=30);12、列出某些雇员的姓名和薪金,条件是他们的薪金高于部门30中所有雇员的薪金select ename ,sal from emp where sal>(select max(sal) from emp where deptno=30);13、列出每个部门的信息以及该部门中雇员的数量select d.deptno,dname,count(ename) from dept d left join emp e on(d.deptno=e.deptno)group by d.deptno,dname14、列出所有雇员的雇员名称、部门名称和薪金Select e.ename,d.dname,e.sal from emp e left join dept d on (d.deptno=e.deptno) 15、列出从事同一种工作但属于不同部门的雇员的不同组合Select tba.ename,tbb.ename,tba.job,tbb.job,tba.deptno,tba.deptnoFrom emp tba,emp tbbWhere tba.job=tbb.job and tba.deptno<>tbb.deptno16、列出分配有雇员数量的所有部门的详细信息,即使是分配有0个雇员Select dept.deptno,dname,loc,count(empno)From dept,empWhere dept.deptno=emp.deptno(+)Group by dept.deptno,dname,loc17、列出各种类别工作的最低工资Select min(sal) from emp group by job18、列出各个部门的MANAGER(经理)的最低薪金Select deptno,min(sal) from emp where job=upper(‘manager’) group by deptno 19、列出按年薪排序的所有雇员的年薪select (sal+nvl(comm,0))*12 as avn from emp order by avn20、列出薪金水平处于第四位的雇员Select * from (Select ename,sal, rank() over (order by sal desc) as grade from emp) where grade=4select b.rownum,b.ename from emp b order by sal decs whererownum(select rownum from b where rownum=4)。

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

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

(一) 新建以下几个表student(学生表):其中约束如下:(1)学号不能存在相同的(2)名字为非空(3)性别的值只能是’男’或’女’(4)系包括这几个:信息系,计算机科学系,数学系,管理系,中文系,外语系,法学系(5)出生日期为日期格式(6)年龄为数值型,且在0~100之间cs(成绩表):其中约束如下:(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 between0 and 100 ),---- 检查约束一—j(成绩)只能在~100之间,可以不输入值constraint f primary key ( sno , cno )---- 定义学生学号和课程号为sc表的主键)course(课程表)其约束如下:(1)课程号(cno)不能有重复的(2)课程名(cname非空(三)针对学生课程数据库查询(1)查询全体学生的学号与姓名。

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

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

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

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

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

select sno from cs where eno is not null(7)查询所有年龄在20岁以下的学生姓名及其年龄。

SQL45题及答案

SQL45题及答案

SQL45题及答案DC)SELECT DISTINCT 仓库号FROM 职工WHERE 工资NOT 1210D)SELECT 仓库号FROM 职工WHERE 工资>1210E)SELECT DISTINCT 仓库号FROM 职工WHERE 工资>1210(49)给出在仓库”CHK1”或”CHK2”工作,并且工资少于1250元的职工号A)SELECT 职工号FROM 职工WHERE 仓库号=”CHK1” OR 仓库号=”CHK2”B)SELECT 职工号FROM 职工WHERE 工资<1250 AND (仓库号=”CHK1”OR 仓库号=”CHK2”)C)SELECT 职工号FROM 职工WHERE 工资<1250 AND (仓库号=”CHK1” AND 仓库号=”CHK2”)D)SELECT 职工号FROM 职工WHERE 工资<1250 AND (仓库号=”CHK1”OR ”CHK2”)(50)找出工资多于1230元的职工号和他们所在的城市的SQL命令为A) SELECT职工号,城市FROM 职工,仓库WHERE (工资>1230) AND (职工.仓库号=仓库.仓库号)B)SELECT职工号,城市FROM 职工,仓库WHERE (工资>1230)C) SELECT职工号,城市FROM 职工,仓库WHERE (工资>1230) OR (职工.仓库号=仓库.仓库号)D)SELECT职工号,城市FROM 仓库WHERE (工资>1230) AND (职工.仓库号=仓库.仓库号)(51)找出工作在面积大于400的仓库的职工号以及这些职工工作所在的城市的SQL命令为A) SELECT * FROM 仓库,职工WHERE (面积>400) AND (职工.仓库号=仓库.仓库号)B)SELECT 职工号,城市WHERE (面积>400) AND (职工.仓库号=仓库.仓库号)C) SELECT职工号,城市FROM 仓库,职工WHERE (面积>400) OR (职工.仓库号=仓库.仓库号)D) SELECT职工号,城市FROM 仓库,职工WHERE (面积>400) AND (职工.仓库号=仓库.仓库号)(52)哪些城市至少有一个仓库的职工工资为1250元?A) SELECT 城市FROM 仓库WHERE 仓库号IN (INDEX仓库号FROM职工WHERE 工资=1250)B)SELECT 城市FROM 仓库WHERE 仓库号IN (SELECT仓库号FROM职工)C) SELECT 城市FROM 仓库WHERE 仓库号IN (SELECT 仓库号FROM职工WHERE 工资=1250)D) SELECT 城市FROM 仓库WHERE 仓库号IN (SELECT 仓库号FROM 职工工资=1250)(53)查询所有职工的工资都多于1210元的仓库的信息的SQL命令为A) SELECT * FROM 仓库WHERE 仓库号WHERE 工资<=1210B)SELECT * FROM 仓库WHERE 仓库号NOT IN (SELECT仓库号FROM职工WHERE 工资<=1210)C) SELECT * FROM 仓库WHERE 仓库号IN (SELECT仓库号FROM职工WHERE 工资<=1210)D) SELECT * FROM 仓库WHERE 仓库号EXISTS (SELECT仓库号FROM职工WHERE 工资<=1210)(54)找出和职工Z4挣同样工资的所有职工的SQL命令为A) SELECT 职工号FROM 职工WHERE 工资=(SELECT 工资FROM 职工WHERE 职工号=’Z4’)B)SELECT 职工号FROM 职工WHERE 工资=’Z4’C) SELECT 职工号FROM 职工IN (SELECT 工资FROM 职工WHERE 职工号=’Z4’)D) SELECT 职工号WHERE 工资=(SELECT 工资FROM 职工WHERE 职工号=’Z4’) (55)检索出工资在1220到1240元范围内的职工信息的SQL命令为A) SELECT * FROM 职工WHERE 工资1220--1240B)SELECT * FROM 职工WHERE BETWEEN 1220<工资<1240C) SELECT * FROM 职工WHERE 工资BETWEEN 1220 AND 1240D) SELECT * FROM 职工WHERE 工资BETWEEN 1220 .AND. 1240(56)从供应商关系中检索出全部公司的信息,不要工厂或其他供应商的信息A) SELECT * FROM 供应商WHERE 供应商名LIKE “*公司”B) SELECT * FROM 供应商WHERE 供应商名LIKE “_公司”C) SELECT * FROM 供应商WHERE 供应商名LIKE “_ _公司”D) SELECT * FROM 供应商WHERE 供应商名LIKE “%公司”(57)找出不在北京的全部供应商信息A) SELECT * FROM 供应商WHERE 地址=”北京”B) SELECT * WHERE 地址! =”北京”C) SELECT * FROM 供应商WHILE 地址<>”北京”D) SELECT * FROM 供应商WHERE 地址! =”北京”(58)按职工的工资值升序检索出全部职工信息A) SELECT * FROM 职工GROUP BY 工资B) SELECT * FROM 职工INDEX BY 工资C) SELECT * FROM 职工ORDER BY 工资D) SELECT * FROM 职工BY 工资(59)选按仓库号排序,再按工资排序并输出全部职工信息A) SELECT * FROM 职工ORDER BY 仓库号,工资B) SELECT * FROM 职工INDEX BY仓库号,工资C) SELECT * FROM 职工ORDER BY仓库号+STR(工资)D) SELECT * FROM 职工GROUP BY 仓库号,工资(60)找出供应商所在地的数目A)COUNT(DISTINCT地址) FROM 供应商B) SELECT COUNT(地址) FROM 供应商C) SELECT SUM(DISTINCT地址) FROM 供应商D) SELECT COUNT(DISTINCT地址) FROM 供应商(61)求支付的工资总数A) SELECT MAX(工资) FROM 职工B) SELECT COUNT (工资) FROM 职工C) SELECT SUM(工资) FROM 职工D) SELECT SUM(工资)(62)求北京和上海的仓库职工的工资的总和A) SELECT SUM(工资) FROM 职工WHERE 仓库号IN;(SELECT仓库号FROM 仓库WHERE 城市=”北京” AND城市=”上海”)B) SELECT SUM(工资) FROM 职工WHERE 仓库号IN;(SELECT仓库号FROM 仓库WHERE 城市=”北京” OR ”上海”)C) SELECT SUM(工资) FROM 职工WHERE 仓库号IN;(SELECT仓库号WHERE 城市=”北京”OR城市=”上海”)D) SELECT SUM(工资) FROM 职工WHERE 仓库号IN;(SELECT仓库号FROM 仓库WHERE 城市=”北京” OR城市=”上海”)(63)求所有职工的工资都多于1210的仓库的平均面积A) SELECT A VG(面积) FROM 仓库WHERE 仓库号NOT IN;(SELECT仓库号FROM 职工WHERE 工资>1210)B) SELECT SUN(面积) FROM 仓库WHERE 仓库号NOT IN;(SELECT仓库号FROM 职工WHERE 工资>1210)C) SELECT A VG(面积) FROM 仓库WHERE 仓库号NOT IN;(SELECT仓库号FROM 职工WHERE 工资<=1210)D) SELECT COUNT(面积) FROM 仓库WHERE 仓库号NOT IN;(SELECT仓库号FROM 职工WHERE 工资<=1210)(64)求在CHK2仓库工作的职工的最高工资值A) SELECT MAX(工资) FROM 职工WHERE 仓库号=”CHK2”B) SELECT MIN(工资) FROM 职工WHERE仓库号=”CHK2”C) SELECT HIGH(工资) FROM 职工WHERE 仓库号=CHK2D) SELECT MAX(工资) FROM 职工WHERE 仓库号=CHK2(65)求每个仓库的职工的平均工资A) SELECT 仓库号,A VG(工资) FROM 职工ORDER BY 仓库号B) SELECT 仓库号,SUM(工资) FROM 职工GROUP BY 仓库号C) SELECT 仓库号,A VG(工资) FROM 职工GROUP BY 仓库号D) SELECT 仓库号,COUNT(工资) FROM 职工GROUP BY 仓库号(66)求至少有两个职工的每个仓库的平均工资A) SELECT 仓库号,COUNT(*),A VG(工资) FROM 职工ORDER BY 仓库号HA VING COUNT(*)>=2B) SELECT 仓库号,COUNT(*),A VG(工资) FROM 职工GROUP BY 仓库号HA VING COUNT(*)>=2C) SELECT 仓库号,COUNT(*),A VG(工资)FROM 职工GROUP BY 仓库号WHERE COUNT(*)>=2D) A VERAGE 仓库号,COUNT(*),A VG(工资) FROM 职工GROUP BY 仓库号HA VING COUNT(*)>=2(67)找出尚未确定供应商的订单信息A) ORDER * FROM 订购单WHERE 供应商号IS NULLB) SELECT * FROM 订购单WHERE 供应商号NULLC) SELECT * FROM 订购单WHERE 供应商号IS=NULLD) SELECT * FROM 订购单WHERE 供应商号IS NULL(68)列出已经确定了供应商的订购单信息A) SELECT * FROM 订购单WHERE 供应商号IS NOT NULLB) SELECT * FROM 订购单WHERE 供应商号IS NULLC) SELECT * FROM 订购单WHERE 供应商号NOT NULLD) SELECT * FROM 订购单WHERE 供应商号NULL(69)检索哪些仓库中还没有职工的仓库的信息A) SELECT * FROM 仓库WHERE EXISTS (SELECT* FROM职工WHERE 仓库号=仓库.仓库号)B) SELECT * FROM 仓库WHERE NOT EXISTS (SELECT* FROM职工WHERE 仓库号=仓库.仓库号)C) SELECT * FROM 仓库WHERE NOT EXISTS (SELECT* FROM职工WHERE 仓库号<>仓库.仓库号)D) SELECT * FROM 仓库WHERE NOT EXISTS (WHERE 仓库号<>仓库.仓库号) (70)检索哪些仓库中至少已经有一个职工的仓库的信息A) SELECT * FROM 仓库WHERE EXISTS (SELECT* FROM职工WHERE 仓库号=仓库.仓库号)B) SELECT * FROM 仓库WHERE仓库号NOT IN (SELECT仓库号FROM职工)C) SELECT * FROM 仓库WHERE 仓库号IN (WHERE 仓库号FROM职工)D) SELECT * FROM 仓库WHERE 仓库号NOT IN(WHERE 仓库号FROM职工)二、(2)—(12)使用的数据如下:当前盘当前目录下有数据库db_stock,其中有数据库表stock.dbf,该数据库表的内容是:股票代码股票名称单价交易所600600 青岛啤酒7.48 上海600601 方正科技15.20 上海600602 广电电子10.40 上海600603 兴业房产12.76 上海600604 二纺机9.96 上海600605 轻工机械14.59 上海000001 深发展7.48 深圳000002 深万科12.50 深圳(2)查询交易所在”深圳”的有那些股票的信息用下列哪条命令?A) SELECT ALL FROM stock B) SELECT * FROM stock WHERE 交易所=“深圳”C) SELECT * WHERE 交易所=“深圳”D) SELECT ALL FROM stock WHERE 交易所=“深圳”(3)执行SELECT MAX(单价)FROM stock 命令后,显示A) 7.48 B) 12.50 C) 15.20 D) 10.40(4)命令SELECT * FROM stock WHERE股票名称=“青岛啤酒”的功能是A)查询青岛啤酒这支股票的所有信息B)查询青岛啤酒这支股票的单价C) 查询所有股票的所有信息D)查询青岛啤酒这支股票的股票代码(5)查询单价超过10元的股票的所有的信息用下列哪项命令?A) SELECT * FROM stock B) SELECT * FROM stock WHERE 单价>10C) SELECT ALL FROM stock WHERE单价>10D) LIST ALL(6)在此表中插入一条记录应使用哪条命令?A) INSERT INTO stock V ALUES(“000001”,“长江”,12.54,“成都”)B) INSERT V ALUES(“000001”,“长江”,12.54,“成都”)C) INSERT INTO stock SET(“000001”,“长江”,12.54,“成都”)D) INSERT TO stock V ALUES(“000001”,“长江”,12.54,“成都”)(7)查询股票名称与”电子”有关的记录应该用A) SELECT * FROM stock WHERE 股票名称=“电子”B) SELECT * FROM stock WHERE 股票名称LIKE“%电子%”C) SELECT * FROM stock WHERE 股票名称=“?电子”D) SELECT * FROM stock WHERE 股票名称=“?电子?”(8)按股票的单价值升序检索出全部的股票信息应该用A) SELECT * FROM stock WHERE ALLB) SELECT * FROM stock ORDER BY 单价C) SELECT * FROM stock ORDER BY 单价DESCD) SELECT * FROM stock GROUP BY 单价(9)检索出单价在10至15之间的所有股票的信息,应使用SQL语句A) SELECT * FROM stock WHERE 10<单价<10B) SELECT * FROM stock WHERE 单价BETWEEN 10 AND 15C) SELECT * FROM stock WHERE 单价>10 AND单价<15D) SELECT * WHERE 单价BETWEEN 10 AND 15(10)查看一共有多少支股票,应使用SQL语句A) SELECT SUN FROM stockB) SELECT SUN(*)FROM stockC) SELECT COUNT FROM stockD) SELECT COUNT(*)FROM stock (11)查看股票的最高和最低单价相差多少。

sql考试题及答案

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语言习题参考答案

第3章 SQL语言习题参考答案1.试述SQL语言的特点。

(85页)答:综合统一、高度非过程化、面向集合的操作方式、以同一种语法结构提供两种使用方式、语言简捷,易学易用。

2.试述SQL的定义功能。

(87页)答:SQL的数据定义功能包括定义表、定义视图和定义索引3.用SQL语句建立第二章习题5中的四个表。

S(SNO,SNAME,STATUS,CITY);P(PNO,PNAME,COLOR,WEIGHT);J(JNO,JNAME,CITY);SPJ(SNO,PNO,JNO,QTY);供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成:CREATE TABLE S(Sno C(2) UNIQUE,Sname C(6) ,Status N(2),City C(4))零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成:CREATE TABLE P(Pno C(2) UNIQUE,Pname C(6),COLOR C(2), WEIGHT I(2))工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、所在城市(CITY)组成:CREATE TABLE J(Jno C(2) UNlQUE,JNAME C(8), CITY C(4))供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成:CREATE TABLE SPJ(Sno C(2),Pno C(2),JNO C(2), QTY N(2))4.针对上题中建立的四个表试用SQL语言完成第二章习题5中的查询:(1)求供应工程J1零件的供应商号码SNO:SELECT DIST SNO FROM SPJ WHERE JNO=’J1’(2)求供应工程J1零件P1的供应商号码SNO:SELECT DIST SNO FROM SPJ WHERE JNO='J1' AND PNO='P1'(3)求供应工程J1零件为红色的供应商号码SNO:SELECT SNO FROM SPJ,P WHERE JNO='J1' AND = AND COLOR='红'(4)求没有使用天津供应商生产的红色零件的工程号JNO:SELECT DIST JNO FROM SPJ WHERE JNO NOT IN (SELE JNO FROM SPJ,P,S WHERE ='天津' AND COLOR='红' AND = AND =。

sql查询题目及答案

sql查询题目及答案

数据库中有如下三个表:学生表(学号id,姓名name,性别sex,系部depart,年龄age)8个学生记录选课表(学号id,课程号cid,成绩grade) 12门课程课程表(课程号cid,课程名cname,学分Ccredit) 6门课程1.从学生表中查询所有同学的所有信息select*from学生表2.从学生表中查询所有学生的信息,并分别赋予一个别名select学号as xuehao,姓名as xingming,性别as xingbie,系部as xibu,年龄as nianling from学生表3.从学生表中查询姓名是Allen的学生的信息select*from学生表where姓名='Allen'4.从学生表中查询学号在1101到1199之间的所有学生的信息select*from学生表where学号between 1101 and 11995.从学生表中查询年龄小于18和大于20的所有学生的学号和姓名select学号,姓名from学生表where年龄<18 or年龄>206.从学生表中查询计算机系年龄小于20的所有学生的信息select*from学生表where系部='computer'and年龄<207.从学生表中查询姓名以A开头的学生的信息select*from学生表where姓名LIKE'A%'8.从学生表中查询姓名的第三个字符是A的学生的学号和姓名select学号,姓名from学生表where姓名LIKE'__A%'9.从学生表中查询姓名中包含“llen”的学生的学号和姓名select学号,姓名from学生表where姓名LIKE'%llen%'10.从学生表中查询姓名中包含“llen”且姓名只有5个字符的学生的学号和姓名select学号,姓名from学生表where姓名LIKE'%llen%'and len(姓名)=511.从学生表中查询有年龄信息的学生的学号和姓名select学号,姓名from学生表where年龄is not null12.从学生表中查询最大年龄和最小年龄select max(年龄)最大年龄,min(年龄)最小年龄from学生表13.从学生表中查询所有学生的平均年龄select avg(年龄)平均年龄from学生表14.从学生表中查询学校所有系的名字select distinct系部from学生表15.从学生表中查询学校共有多少个系select count(distinct系部)系部总和from学生表16.从选课表中查询所有学生的选课情况select distinct课程号from选课表17.从选课表中查询选修课程号为C01课程的学生的学号select学号from选课表where课程号='C01'18.从选课表中查询所有没有选C02课程的学生的学号select distinct学号from选课表where课程号!='C02'19.从选课表中查询有选修C01或C02课程的学生的学号select distinct学号from选课表where课程号='C01' or 课程号='C02'20.从选课表中查询学号为1101的学生的选课情况select课程号from选课表where学号='1101'21.从选课表中查询所有选课信息,即学号、课程号、成绩,并给成绩加8分select学号,课程号,成绩=成绩+8 from选课表22.从选课表中查询学号为1101的学生的所有选修课程成绩的总和select sum(成绩)成绩总和from选课表where学号='1101'23.从选课表中查询选修课程好为C02所有学生的成绩平均值并赋予“平均成绩”列名select avg(成绩)平均成绩from选课表where课程号='C02'24.从选课表中查询选修课程号C02且该门课程考试及格的学生的学号select学号from选课表where课程号='C02'and成绩>=6025.从选课表中查询所有无考试成绩的学生的学号和课程的课程号select学号,课程号from选课表where成绩is null26.从选课表中查询选修了课程号以C开头的学生的学号和所选课程的课程号select学号,课程号from选课表where课程号LIKE'C%'27.从选课表中查询选修了课程号以C、D或E开头学生的学号和所选课程的课程号select学号,课程号from选课表where课程号LIKE'[CDE]%'28.从选课表中查询选修了课程号中包含DB的学生的学号和课程号select学号,课程号from选课表where课程号LIKE'%DB%'29.从选课表中查询选修了课程的学生的学号select distinct学号from选课表where课程号is not null30.从选课表中查询选修了课程的学生的人数select count(distinct学号)总人数from选课表31.找出姓名以D开头的学生姓名和所有成绩select学生表.姓名,选课表.成绩from学生表join选课表on学生表.学号=选课表.学号where学生表.姓名LIKE'D%'32.查找的所有学生姓名与学号,结果按学号降序排序select 学号,姓名from学生表order BY学号DESC33.查找成绩介于80和90之间的学生姓名,结果按成绩和姓名升序排序select学生表.姓名from选课表join学生表on学生表.学号=选课表.学号where选课表.成绩between 80 and 90order BY选课表.成绩,学生表.姓名34.查找english系的所有学生姓名,结果按成绩和姓名升序排序select学生表.姓名,学生表.学号,选课表.成绩from选课表join学生表on学生表.学号=选课表.学号where学生表.系部='english'35.查找同时选修了C01及C02两门课程的学生姓名及学号select学生表.姓名,A.学号from选课表as A join选课表as B on A.学号=B.学号join学生表on学生表.学号=A.学号where A.课程号='C01'and B.课程号='C02'36.查找所有选修了课程的学生姓名及所在系别select distinct学生表.姓名,学生表.系部from学生表join选课表on学生表.学号=选课表.学号where选课表.课程号is not null37.查找成绩高于90分的学生姓名、学号及系别select学生表.姓名,学生表.学号,学生表.系部from学生表join选课表on学生表.学号=选课表.学号where选课表.成绩>=9038.找出选修了C01课程的学生姓名select学生表.姓名from学生表join选课表on学生表.学号=选课表.学号where选课表.课程号='C01'39.查询English系学生人数select count(*) English 系总人数from学生表where系部='English'40.分别查询各系的学生人数select系部,count(*)人数from学生表group by系部41.创建一个角色uus.CREATE ROLE uus;42.给uus授权SELECT,UPDATE,INSERT .GRANT SELECT,UPDATE,INSERTON StuTO uus43.增加一个登录,登录名为tp,密码为123,默认的数据库为stuEXEC sp_addlogin 'tp', '123', 'stu'44.将登录tp增加为test库的一个用户,并连接到test库。

sql数据库试题及答案

sql数据库试题及答案

sql数据库试题及答案SQL数据库试题一1. 下面哪个命令可以创建一个名为"employee"的表格?A. CREATE TABLE employee;B. NEW TABLE employee;C. ADD TABLE employee;D. INSERT TABLE employee;答案:A. CREATE TABLE employee;2. 下列哪个是SQL数据库的关键字?A. SELECTB. COLUMNC. INSERTD. ADD答案:A. SELECT3. 在SQL中,如何查询一个名为"customers"的表格的所有记录?A. SELECT * FROM customers;B. SELECT ALL FROM customers;C. SELECT RECORDS FROM customers;D. SELECT DATA FROM customers;答案:A. SELECT * FROM customers;4. 如何在SQL中向表格中插入新的记录?A. ADD NEW INTOB. UPDATE TABLEC. INSERT INTOD. CREATE NEW答案:C. INSERT INTO5. 如何根据特定条件从表格中删除记录?A. REMOVE FROMB. ERASE ROWC. DELETE FROMD. DROP RECORD答案:C. DELETE FROMSQL数据库试题二1. 下面哪个关键字可以用来对查询结果进行排序?A. GROUP BYB. SORT BYC. ORDER BYD. ARRANGE BY答案:C. ORDER BY2. 在SQL中,如何对表格的指定列进行更新?A. MODIFY COLUMNB. EDIT TABLEC. UPDATE COLUMND. ALTER TABLE答案:C. UPDATE COLUMN3. 下面哪个函数可以计算表格中指定列的平均值?A. AVG()B. SUM()C. MAX()D. COUNT()答案:A. AVG()4. 在SQL中,如何查找表格中满足特定条件的记录数量?A. GET()B. FETCH()C. SEARCH()D. COUNT()答案:D. COUNT()5. 下面哪个关键字可以用来从多个表格中联合查询数据?A. UNIONB. JOINC. CONNECTD. COMBINE答案:B. JOIN文章到此结束,希望以上SQL数据库试题及答案能帮助到您对SQL数据库的理解和学习。

sql测试题和答案.docx

sql测试题和答案.docx

sql测试题和答案# SQL测试题1. 基础查询题- 题目:编写一个SQL查询,从`employees`表中选择所有员工的姓名和员工ID。

- 答案:`SELECT name, employee_id FROM employees;`2. 条件查询题- 题目:从`orders`表中选择所有订单金额超过1000的订单。

- 答案:`SELECT * FROM orders WHERE order_amount > 1000;`3. 排序题- 题目:从`products`表中选择所有产品的名称和价格,并按价格降序排列。

- 答案:`SELECT name, price FROM products ORDER BY price DESC;`4. 聚合函数题- 题目:计算`sales`表中所有销售额的总和。

- 答案:`SELECT SUM(sales_amount) AS total_sales FROM sales;`5. 分组查询题- 题目:从`sales`表中按产品ID分组,并计算每个产品的总销售额。

- 答案:`SELECT product_id, SUM(sales_amount) AStotal_sales_per_product FROM sales GROUP BY product_id;`6. 连接查询题- 题目:查询`customers`表和`orders`表,找出所有客户的姓名和他们下过的订单数量。

- 答案:`SELECT , COUNT(o.order_id) AS order_count FROM customers c JOIN orders o ON c.customer_id =o.customer_id GROUP BY ;`7. 子查询题- 题目:找出`employees`表中工资高于平均工资的员工的姓名和工资。

- 答案:`SELECT name, salary FROM employees WHERE salary > (SELECT AVG(salary) FROM employees);`8. 多表连接查询题- 题目:查询`employees`表和`departments`表,找出所有员工的姓名、部门名称和部门ID。

sql面试题及答案

sql面试题及答案

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

在面试中,SQL问题通常用来评估候选人对数据库查询、数据操作和数据库设计的理解。

以下是一些常见的SQL面试题及其答案:# 1. 什么是SQL?答案:SQL是一种用于存储、操作和检索数据的编程语言,主要用于关系数据库管理系统(RDBMS)。

# 2. 列举一些基本的SQL命令。

答案:基本的SQL命令包括:- SELECT:用于从数据库中检索数据。

- INSERT INTO:用于向数据库表中插入新数据。

- UPDATE:用于修改表中的数据。

- DELETE:用于从表中删除数据。

- CREATE TABLE:用于创建新表。

- ALTER TABLE:用于修改现有表的结构。

- DROP TABLE:用于删除表。

# 3. 什么是主键(Primary Key)?答案:主键是数据库表中的一个或多个字段,用于唯一标识表中的每条记录。

主键的值必须是唯一的,并且不能为NULL。

# 4. 什么是外键(Foreign Key)?答案:外键是一个表中的字段,它引用了另一个表的主键。

外键用于建立两个表之间的关联,确保数据的引用完整性。

# 5. 什么是索引(Index)?答案:索引是数据库表中的一个结构,用于提高查询速度。

通过索引,数据库可以快速定位到表中的数据,而不需要扫描整个表。

# 6. 什么是事务(Transaction)?答案:事务是一系列的数据库操作,它们作为一个整体被执行,具有原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)的特性。

# 7. 什么是SQL注入?答案:SQL注入是一种安全漏洞,攻击者可以通过在应用程序的输入字段中插入恶意SQL代码,来操纵后端数据库。

# 8. 如何防止SQL注入?答案:防止SQL注入的方法包括:- 使用参数化查询。

sql数据库试题及答案

sql数据库试题及答案

sql数据库试题及答案# SQL数据库试题及答案一、选择题1. SQL代表什么?- A. Structured Query Language- B. Simple Query Language- C. Standard Query Language- D. System Query Language答案:A2. 在SQL中,用于查询数据的语句是:- A. INSERT- B. UPDATE- C. SELECT- D. DELETE答案:C3. 下列哪个不是SQL的数据类型?- A. INT- B. FLOAT- C. CHAR- D. TEXT答案:D二、填空题4. SQL中的主键(_______)是用来唯一标识表中每一行数据的字段。

答案:PRIMARY KEY5. 在SQL中,使用(_______)语句可以增加新的数据记录到表中。

答案:INSERT INTO6. SQL中的(_______)用于删除表中的记录。

答案:DELETE三、简答题7. 简述SQL中的事务是什么,并说明其四个基本特性。

答案:事务是SQL中用来保证数据一致性的操作序列。

事务具有以下四个基本特性:- 原子性(Atomicity):事务中的所有操作要么全部完成,要么全部不完成,不会结束在中间某个点。

- 一致性(Consistency):事务必须保证数据库从一个一致的状态转移到另一个一致的状态。

- 隔离性(Isolation):并发执行的事务之间不会互相影响。

- 持久性(Durability):一旦事务提交,它对数据库的改变就是永久性的,即使系统发生故障也不会丢失。

8. 解释什么是SQL的联接(JOIN)操作,并给出内联接(INNER JOIN)的例子。

答案:联接操作是SQL中用于结合两个或多个表中的行的一种操作。

内联接根据两个表中的共同字段来选择记录。

例如:```sqlSELECT Orders.OrderID, Customers.CustomerNameFROM OrdersINNER JOIN Customers ON Orders.CustomerID =Customers.CustomerID;```这个例子中,`Orders` 表和 `Customers` 表通过 `CustomerID` 字段进行内联接。

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

1、一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)注意:基本操作题为4道SQL题,请将每道题的SQL命令粘贴到SQL1.txt文件,每条命令占一行,第1道题的命令是第1行,第2道题的命令是第2行,以此类推;如果某道题没有做相应行为空。

在考生文件夹下完成下列操作:1、利用SQL SELECT命令将表stock_sl.dbf复制到stock_bk.dbf。

SELECT * FROM stock_sl INTO TABLE stock_bk2、利用SQL INSERT命令插入记录("600028",4.36, 4.60, 5500)到stock_bk.dbf表。

INSERT INTO stock_bk VALUES ("600028",4.36,4.60,5500)3、利用SQL UPDATE命令将stock_bk.dbf表中"股票代码"为"600007"的股票"现价"改为8.88。

UPDATE stock_bk SET 现价=8.88 WHERE 股票代码="600007")4、利用SQL DELETE命令删除stock_bk.dbf表中"股票代码"为"600000"的股票。

DELETE FROM stock_bk WHERE 股票代码="600000"2.98、二、简单应用(2小题,每题20分,计40分)在考生文件夹下完成如下简单应用:1. 用SQL语句对自由表"教师"完成下列操作:将职称为"教授"的教师新工资一项设置为原工资的120%,其他教师的新工资与原工资相等;插入一条新记录,该教师的信息:姓名"林红",职称"讲师",原工资10000,新工资10200,同时将你所使用的SQL语句存储于新建的文本文件teacher.txt中(两条更新语句,一条插入语句,按顺序每条语句占一行)。

UPDATE 教师SET 新工资=原工资*1.2 WHERE 职称="教授"UPDATE 教师SET 新工资=原工资*1.2 WHERE 职称#"教授"INSERT INTO 教师VALUES ("林红","讲师",10000,10200)3.112、一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)在考生文件夹下完成如下操作,并将相应的SQL语句存储在文件one.prg中:1.用SQL INSERT语句插入元组("p7","PN7",1020)到"零件信息"表(注意不要重复执行插入操作)。

INSERT INTO 零件信息VALUES ("p7","PN7",1020)2.用SQL DELETE语句从”零件信息”表中删除单价小于600的所有记录。

DELETE FROM 零件信息WHERE 单价<6003. 用SQL UPDATE语句将”零件信息”表中零件号为”p4”的零件的单价更改为1090。

UPDATE 零件信息SET 单价=1090 WHERE 零件号=”p4”4.120+70、一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)在考生文件夹下完成下列操作:1.使用SQL语句创建一个名为"分组情况表"的自由表,"分组情况表"有两个字段:组号和组名,组号占两个字符,组名占10个字符。

请将该SQL语句存储在three.TXT中,否则不得分。

CREATE TABLE 分组情况表(组号c(2), 组名c(10))2.使用SQL语句插入一个记录到"分组情况表"中,插入的内容是,组号:"01",组名:"通俗唱法"。

请将该SQL语句存储在four.TXT中,否则不得分。

INSERT INTO 分组情况表VALUES ("01","通俗唱法")5.244、一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)在考生文件夹下,完成如下操作:3. 使用SQL语句为考生文件夹下的"学院表"增加一个字段"教师人数"(整数型),同时为该字段设置有效性规则:教师人数>=0。

请将该SQL语句存储在three. TXT文件中,否则不得分。

ALTER table 学院表ADD 教师人数I CHECK 教师人数>=04.使用SQL语句将考生文件夹下的自由表teacher中教师姓名为Jack的工资修改为8000元。

请将该SQL 语句存储在four. TXT文件中,否则不得分。

UPDATE teacher SET 工资=8000 WHERE 姓名="Jack"6.210+16、一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)在考生文件夹下完成如下操作:1.打开考生文件夹下的数据库SPORT,首先永久删除该数据库中的temp表,然后将"金牌榜"、"获奖牌情况"和"国家"三个自由表加入该数据库中。

3.使用SQL语句为表"金牌榜"增加一个字段"奖牌总数"(整数型),同时为该字段设置有效性规则:奖牌总数>=0。

请将该SQL语句存储在文件one.txt中,否则不得分。

ALTER table 金牌傍ADD 奖牌总数i CHECK 奖牌总数>=04.使用SQL语句更改表"金牌榜"所有记录的"奖牌总数"字段值,该值应为"金牌数"、"银牌数"、"铜牌数"三项之和。

请将该SQL语句存储在文件txt.prg中,否则不得分。

UPDATE 金牌傍SET 奖牌总数=金牌数+银牌数+铜牌数7.210+31、一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)在考生文件夹下,打开DB数据库,完成如下基本操作:1.给表TABB增加一个字段,字段名为"日期",数据类型为日期型。

ALTER table tabb ADD 日期 d使用SQL Update语句将表TABB中所有记录的字段"日期"的值修改为2005-10-01,并将SQL语句存储到名为TWO.txt的文件中。

UPDATE tabb SET 日期={^2005-10-1}3.表TABA中有重复的记录,用SQL语句将表TABA中的记录复制到另外一个与它具有相同结构的表TABC 中,并消除重复的记录(对于重复多次的记录,只复制一条记录的数据)。

并将SQL的SELECT语句存储到名为THREE.txt的文件中。

SELECT distinct * FROM taba INTO TABLE tabc8.12、二、简单应用(2小题,每题20分,计40分)2、在考生文件夹中有一个数据库SDB,其中有数据库表STUDENT2、SC和COURSE2。

三个表如下所示: STUDENT2(学号,姓名,年龄,性别,院系编号)SC(学号,课程号,成绩,备注)COURSE2(课程号,课程名,先修课号,学分)用SQL语句查询"计算机软件基础"课程的考试成绩在85分以下(含85分)的学生的全部信息并将结果按学号升序存入NOEX.DBF文件中。

(表的结构同STUDENT2,并在其后加入成绩字段)。

SELECT student2.*, 成绩FROM student2,course2,sc WHERE student2.学号=sc.学号AND course2.课程号=sc.课程号AND 成绩<=85 and 课程名=”计算机软件基础”ORDER BY student2.学号INTO TABLE noex9.41、二、简单应用(2小题,每题20分,计40分)1、在考生文件夹中有一个数据库STSC,其中有数据库表STUDENT、SCORE和COURSE。

利用SQL语句查询选修了"C++"课程的学生的全部信息,并将结果按学号升序存放在CPLUS.DBF文件中(表的结构同STUDENT,并在其后加入课程号和课程名字段)。

SELECT student.*,course.课程号,课程名FROM student,score,course WHERE student.学号=score.学号AND score.课程号=course.课程号AND 课程名="C++" ORDER BY student.学号INTO TABLE clus10.44、二、简单应用(2小题,每题20分,计40分)2、在考生文件夹中有一个数据库SDB,其中有数据库表STUDENT2、SC和COURSE2。

三个表如下所示:STUDENT2(学号,姓名,年龄,性别,院系编号)SC(学号,课程号,成绩,备注)COURSE2(课程号,课程名,先修课号,学分)用SQL语句查询"数据库"课程的考试成绩在85分以上(含85分)的学生的全部信息并将结果按学号升序存入自由表NINE.DBF文件中(表的结构同STUDENT2,并在其后加入成绩字段)。

SELECT student2.*, 成绩FROM student2,course2,sc WHERE student2.学号=sc.学号AND course2.课程号=sc.课程号AND 成绩<=85 and 课程名=”数据库”ORDER BY student2.学号INTO TABLE noex11.50、二、简单应用(2小题,每题20分,计40分)在考生文件夹下完成如下简单应用:1. 将order_list1表中的全部记录追加到order_list表中,然后用SQL SELECT语句完成查询:按总金额降序列出所有客户的客户号、客户名及其订单号和总金额,并将结果存储到results表中(其中客户号、客户名取自customer表,订单号、总金额取自order_list表)。

Select * from order_list1 into table order_listSELECT b.客户号,客户名,订单号,总金额from order_list a,customer b where a.客户号=b.客户号order by 总金额desc into table results12.53、二、简单应用(2小题,每题20分,计40分)在考生文件夹下完成如下简单应用:1.将 order_detail1表中的全部记录追加到order_detail表中,然后用SQLSELECT语句完成查询:列出所有订购单的订单号、订购日期、器件号、器件名和总金额(按订单号升序,订单号相同再按总金额降序)并将结果存储到results表中(其中订单号、订购日期、总金额取自order_list表,器件号、器件名取自order_detail表)。

相关文档
最新文档