T-Sql(四)表关联和视图(view)

简介: 原文:T-Sql(四)表关联和视图(view)  今天讲下T-sql中用于查询的表关联和视图,我们平时做项目的时候会遇到一些复杂的查询操作,比如有班级表,学生表,现在要查询一个学生列表,要求把学生所属班级名称也查询出来,这时候简单的select查询就不行了,需要关联班级表,因为学生是一定属于某一个班级的,所以关联的示例需要自关联。
原文: T-Sql(四)表关联和视图(view)

  今天讲下T-sql中用于查询的表关联和视图,我们平时做项目的时候会遇到一些复杂的查询操作,比如有班级表,学生表,现在要查询一个学生列表,要求把学生所属班级名称也查询出来,这时候简单的select查询就不行了,需要关联班级表,因为学生是一定属于某一个班级的,所以关联的示例需要自关联。

  表关联(join)  

  下面列一些示例代码,帮助大家理解。

select t2.*         --表自关联
from Tree t1
inner join Tree t2
on t1.NO=t2.ParentNo
where t1.Name='Node1_2';

select * from tree      --子嵌套查询
where ParentNo = (select NO from tree where Name = 'Node1_2');

select * from tree 
where parentNo in (select no from tree where Name = 'Node1_2');

  上面是表自关联,关键字inner,就是返回t1.NO=t2.ParentNo条件的所有t2表的数据,

  有表自关联,当然还有左关联,右关联,示例代码:

select t2.*         --左关联
from Tree t1
left join Tree t2
on t1.NO=t2.ParentNo
where t1.Name='Node1_2';

select t2.*         --右关联
from Tree t1
right join Tree t2
on t1.NO=t2.ParentNo
where t1.Name='Node1_2';

  视图View

  视图的关键字是View,就是一个查询集合,方便我们去查询数据,视图其实就是表,多表连接的表,我们查询的时候不需要反复的去拼接语句,直接查询视图就可以,方便我们的操作,当然一些简单的查询操作就没必要去创建视图了。

  示例代码:

create view Production.vw_Product
as 
    select t1.* from Production.Product t1
    left outer join Production.ProductModel t2 on t2.ProductModelID=t1.ProductModelID
    left outer join Production.ProductSubcategory t3 on t3.ProductSubcategoryID=t1.ProductSubcategoryID
    left outer join Production.UnitMeasure t4 on t4.UnitMeasureCode=t1.SizeUnitMeasureCode and t4.UnitMeasureCode=t1.SizeUnitMeasureCode
    --order by t1.ProductID
    

  查询视图:

select *from Production.vw_Product

  表关联和视图都是比较简单的数据库操作,但也是比较常用的。大家好好练习。

  还有一些相关编程知识的整理,希望大家关注下。。。

 

目录
相关文章
|
2月前
|
SQL 数据库
SQL使用视图的优缺点
SQL使用视图的优缺点
18 0
|
2月前
|
SQL 存储 数据库
sql事务、视图和索引
sql事务、视图和索引
|
2月前
|
SQL 算法 数据库
【数据库SQL server】关系数据库标准语言SQL之视图
【数据库SQL server】关系数据库标准语言SQL之视图
98 0
|
2月前
|
SQL 存储 关系型数据库
sql语句,索引,视图,存储过程
sql语句,索引,视图,存储过程
40 0
|
9月前
|
SQL
SQL视图View(是一张虚拟的表)
SQL视图View(是一张虚拟的表)
|
2月前
|
SQL 数据库 数据库管理
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(一)模式、表、索引与视图
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(一)模式、表、索引与视图
94 11
|
7月前
|
SQL 数据库 数据安全/隐私保护
SQL Server 数据操控,视图和索引
SQL Server 数据操控,视图和索引
137 0
|
8月前
|
SQL 关系型数据库 MySQL
MySql数据库中的视图,索引与数据库sql脚本如何导入与导出---(详细介绍)
MySql数据库中的视图,索引与数据库sql脚本如何导入与导出---(详细介绍)
272 0
|
2月前
|
存储 SQL 缓存
4.2.1 SQL语句、索引、视图、存储过程
4.2.1 SQL语句、索引、视图、存储过程
|
23天前
|
SQL 存储 数据可视化
SQL 视图(Views)
SQL 视图(Views)
22 2