S2金牌考试错题解析
2017-01-13 15:52
239 查看
答案是BD。选项A的create table语句中,表名后面的大括号“{”、“}”是错误的,应该是圆括号“(”、“)”。选项C对标识列的描述也是错误的,identity(1,8)表示指定列自动编号,起始值是1,递增量是8.
此题目考查的是SET与SELECT语句给变量赋值的区别。a,b,c,d选项在语法结构上并没有错误,但是在表达式返回多个值时,select语句将返回的最后一个值给变量,set语句会出错。
正确答案是选项A。本题要查询选修了所有课程的学生信息,即查询有些学生没有一门课程他没有选的。如果有一门课没有选,则此时(1)select
* from select_course sc where sc.student_id=ts.id and sc.course_id=c.id存在null,这说明(2)select * from course c 的查询结果中确实有记录不存在(1查询中),查询结果返回没有选的课程,此时select * from student ts 后的not exists 判断结果为false,不执行查询。
全局变量前缀是”@@”,并且系统变量不能修改和赋值,局部变量可以声明和赋值,前缀是“@”,因此选C
如果题目给出是"一些"那肯定代码中含有some如果题目给出是"任何"那肯定代码中含有any如果题目给出是"所有或者全部"那肯定代码中含有all
在T-SQL中,变量按生存范围可以分为全局变量(Global
Variable)和局部变量(Local Variable)。全局变量是由系统定义的,在整个SQL SERVER实例内都能访问到的变量.全局变量以@@作为第一个字符,用户只能访问,不能赋值。局部变量由用户定义,生命周期只在一个批处理内有效。局部变量以@作为第一个字符,由用户自己定义和赋值。
此题目考察的是CONVERT()函数转换类型,CONVERT()中有两个参数
, 第一个是数据类型,第二个为表达式,所以选项C、D是正确的,选项A、B是不正确的。
此题目考察的是CONVERT()函数转换类型。A选项中不可能把字符串转换成int,因此A是不正确的选项
答案是AD。T-SQL中,Case语句有两种格式。选项A和选项D代码分别符合Case语句的两种语法格式。但选项B的Case语句编写有错,在结束位置使用as而不是end关键字;而执行选项C代码在结果集中会出现2个ClassID列,与本题要求不符
相关文章推荐
- S2 错题解析(前四章)
- S2错题解析
- S2 测试的错题及解析
- S2 金牌试题解析
- S1错题解析
- S1考试错题本及解析
- [置顶] 2017跟着小虎玩着去软考--项目管理师上午考试试题之一(解析2016下半年项目管理师上午试题1-5题)
- 歪理邪说解析架构设计师上午考试试题之十二(分析2010下半年系统架构设计师上午试题58-60题)
- 全面解析Oracle认证及如何准备考试
- 裸考—歪理邪说解析系统分析师上午考试试题之八(分析2010上半年系统分析师上午试题37-40题)
- 牛客网日刷30题错题解析--数据结构
- 2009年下半年网工考试上午试卷标准答案与解析(一)
- Sun java认证考试真题答案及部分解析(一)
- SQL--考试错题分析
- 金牌智能人工------ 纠错 , S2 金牌
- S2 测试错题
- 2017跟着小虎玩着去软考--项目管理师上午考试试题之四(解析2016下半年项目管理师上午试题12-15题)
- S2-即将到来的考试
- UI测试_错题解析