SQL server 视图

本文介绍了SQL Server中的视图概念,视图是一个虚拟表,基于表的查询结果。通过示例展示了如何创建、使用视图,并与表进行对比。包括创建视图的T-SQL语法,以及视图在数据查询中的应用,如筛选特定区域的省市信息和学生信息查询。
摘要由CSDN通过智能技术生成

目录

 

create table region(id varchar(20) primary key, --主键,区域编号name varchar(20) not null, --区域名称pid varchar(20) not null      --区域附属编号 0省份);

insert into regionselect 's2309','广东省','0'unionselect 's2098','湖南省' ,'0'unionselect 's2033','广西省' ,'0'unionselect 's2034','永州市' ,'s2098'unionselect 's2056','长沙市' ,'s2098'unionselect 's2012','广东市' ,'s2309'unionselect 's2089','东莞市' ,'s2309' unionselect 's2037','怀化市' ,'s2098'

--查询所有的省份select *from region where pid='0'

结果如下:

---- 查询湖南省下所有的市select *from region where pid='s2098'

结果如下

select *from region where pid in(select id from region where name ='湖南省')

结果如下:

select a.name,count(b.name)from region a full join region bon a.id=b.pid where a.name like '%省%'group by a.name;

结果如下:

-- 查询性张的人: 张x,张xx,张xxxselect * from stuInfo where stuName like '张%';

-- 查询性张的人: 张xxselect * from stuInfo where stuName like '张__';

-- 查询以丽结尾的人: xx丽select * from stuInfo where stuName like '%丽';

-- 查询名字带秋的人: 秋xx,x秋x,xx秋select * from stuInfo where stuName like '%秋%';


什么是视图

视图是一张虚拟表,它表示一张表的部分数据或多张表的综合数据,其结构和数据是建立在对表的查询基础上 视图中并不存放数据,而是存放在视图所引用的原始表(基表)中 同一张原始表,根据不同用户的不同需求,可以创建不同的视图

使用T-SQL语句创建视图的语法

CREATE VIEW view_name AS <select语句>

如何创建视图

 IF EXISTS (SELECT * FROM sysobjects WHERE            检测是否存在

             name = 'view_stuInfo_stuMarks')    

 DROP VIEW view_stuInfo_stuMarks GO                          删除视图

CREATE VIEW view_stuInfo_stuMarks                             创建视图

AS    

SELECT 姓名=stuName,学号=stuInfo.stuNo,      

笔试成绩 =writtenExam,  机试成绩=labExam,      

      平均分=(writtenExam+labExam)/2          

     FROM stuInfo LEFT JOIN stuMarks            

         ON stuInfo.stuNo=stuMarks.stuNo

GO SELECT * FROM view_stuInfo_stuMarks                  使用视图

视图和表的区别

 

 视图和表的关系

 

create table region(
id varchar(20) primary key, --主键,区域编号
name varchar(20) not null, --区域名称
pid varchar(20) not null      --区域附属编号 0省份
);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值