x625802392 发表于 2018-10-20 14:45:01

SQL学习之用命令方式创建、修改、删除视图

  1、创建视图
  (1)一般格式:
  create view 视图名
  
  as
  select语句
  
  (2)定义单源表视图:
  建立信息管理系学生的学号、姓名、性别和年龄的视图
  create view is_student(studentid,studentname,sex,birth)
  as
  select studentid,studentname,sex,getdate()-birth
  from student
  where sdept = '信息管理系'
  (3)定义多源表视图:
  建立信息管理系选修C001课程的学生的学号、姓名和成绩的视图
  create view V_IS_S1(studentid,studentname,grade)
  as
  select s.studentid,studentname,grade
  from student s
  join grade g on g.studentid = s.studentid
  where sdept = '信息管理系' and g.courseid = 'C001'
  (4)在已有视图上定义新的视图:
  在(2)题上建立的视图上建立信息管理系年龄小于20的学生的学号、姓名和年龄的视图
  create view is_student_sage(studentid,studentname,birth)
  as
  select studentid,studentname,getdate()-birth
  from is_student
  where getdate()-birth >20
  (5)带表达式的视图
  定义一个学生出生年份的视图,内容包括学号、姓名和出生年份
  create view BT_s(studentid,studentname,birth)
  as
  select studentid,studentname,getdate()-birth
  from student
  (6)有分组统计信息的视图:
  定义一个每个学生的学号及平均成绩的视图
  create view s_g(studentid,grade)
  as
  select studentid,avg(grade)
  from grade
  group by studentid
  2、修改视图:
  alter view 视图名
  as
  查询语句
  修改为统计每个学生的考试成绩和选课总门数。
  alter view s_g(studentid,grade,count_coursename)
  as
  select studentid,avg(grade),count(*)
  from grade
  group by studentid
  3、删除视图:
  drop view 视图名

页: [1]
查看完整版本: SQL学习之用命令方式创建、修改、删除视图