解析: T-SQL中,Create语句用来创建数据库各种类型对象;alter语句是实现数据库对象的维护操作,比如添加、删掉各种约束等;drop语句是删除数据库的指定对象;insert语句则是向表中添加记录。
解析: 要查询选修了所有课程的学生信息,即查询有些学生没有一门课程他没有选的。如果有一门课没有选,则此时(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,不执行查询。
解析:
SQL Server中,嵌套查询中的IN表示某一个字段在某一个集合里面,集合中可能有多个也可能只有一个值,但是只会有一个字段。任何一个子查询都是SELECT块,一定要加上(),否则就会报错。任何一个子查询都不能用ORDER BY排序,只能对最终的查询结果进行排序。子查询的结果只是作为父查询的某一个条件而已,还可以用AND,OR等追加更多的条件。
解析:声明局部变量的语法为:DECLARE @variable_name DateType。DECLARE @age int 声明了一个整型变量age。
解析:SQL Server中,先按id字段排序,使用MAX()函数查找出第2000条记录的id,再对比获取比第2000条记录id字段值大的前5条记录即为我们需要的结果。
解析:T-SQL中,创建约束时,推荐先创建表结构,再添加相关的约束。在添加各种约束时,ALTER TABLE语句与“ADD CONSTRAINT”子句及相关的约束关键字一起使用。同样,删除约束时将使用ALTER TABLE语句和“DROP CONSTRAINT”子句完成。添加和删除约束时,都要指定约束的名称。
解析:
如果题目给出是"一些"那肯定代码中含有some
如果题目给出是"任何"那肯定代码中含有any
如果题目给出是"所有或者全部"那肯定代码中含有all
解析:T-SQL中,利用WHILE循环重复执行记录插入操作。本题WHILE循环中应对循环计数器变量@i进行增值运算;否则将是死循环。WHILE循环有多条语句,要使用BEGIN和END语句将重复执行的语句放在其中。
解析:在关系数据库中,嵌套在其他查询中的查询,称为子查询。子查询分为相关子查询和非相关子查询。子查询的结构和普通的查询语句相差不大,只是将以前的语句中嵌套另一句查询。使用子查询虽然能在多张表中查找数据,但是它也有很大的局限性,语法杂乱,影响性能,为了解决这种问题,我们引入了表联接。使用表联接可以很方便的在几张表中查找数据。多表联接查询实际上是通过各个表之间共同列的关联性来查询数据的,它是关系数据库查询最主要的特征。例如:通过student表和score表共有的学号列可以查询获得学生的姓名和考试成绩。理论上来说,子查询和表联接查询是可以互相替换的。