基于两个基表创建视图

原创 2005年04月22日 16:00:00

基于两个基表建立视图的时候,有时会面临一个问题:两个基表是有连接字段可用,但它们之间不是一个完全映射时,即两个表的纪录不是一一对应。如果采用简单的连接来形成视图的话,会丢失信息的。这时我们可以选择用表连接的方式来创建视图。具体可以有左连接,右连接,全连接。可根据实用性,选择使用。
例:(这是在ms sql service下实现的)
/*创建数据库*/
create table uerw(hao int,username varchar(20),primary key(hao));
create table useri(hao int,userinf varchar(200),primary key(hao));
/*插入数据*/
insert uerw values(1,'gaoli');
insert uerw values(2,'liming');
insert uerw values(3,'xiaogao');
insert useri values(1,'i am a student');
insert useri values(3,'i am a techer');
/*创建视图*/
create view userinformation as select uerw.hao,uerw.username,useri.userinf from uerw left join useri on uerw.hao=useri.hao
--注意对于create view以及过程存储而言,不能通过批处理来用(也就是执行多条语句)。
/*查询视图*/
select * from userinformation;

所得的结果是:
1,gaoli,i am a student
2,liming,NULL
3,xiaogao,i am a techer

基于两个基表创建视图

基于两个基表建立视图的时候,有时会面临一个问题:两个基表是有连接字段可用,但它们之间不是一个完全映射时,即两个表的纪录不是一一对应。如果采用简单的连接来形成视图的话,会丢失信息的。这时我们可以选择用表...
  • gaolongbiti
  • gaolongbiti
  • 2005年04月21日 21:45
  • 1796

Oracle 数据库字典,视图,基表

1.数据字典 (存放在sys方案里面)  Java代码  1.是oracle数据库中重要的组成部,提供了数据库的一些系统信息。   2.它是只读表(数据字典基表)和视图(...
  • guoxuepeng123
  • guoxuepeng123
  • 2012年08月08日 13:05
  • 1433

物化视图定义为on commit导致update更新基表慢的解决方案

 由于物化视图定义为on commit导致update更新基表慢的解决方案   由于物化视图定义为on commit导致update更新基表慢的解决方案 以下是模拟和解决测试过程:   ...
  • BoWa21C
  • BoWa21C
  • 2013年12月21日 22:02
  • 573

oracle 视图 创建 操作 简单 复杂 基表 不存在 增 删 改 插入 修改 删除 查看 结构

oracle 视图 创建 操作 简单 复杂 基表 不存在 增 删 改 插入 修改 删除 查看 结构视图的概念   视图是基于一张表或多张表或另外一个视图的逻辑表。视图不同于表,视图本身不包含任何数据。...
  • Thomastang2012
  • Thomastang2012
  • 2011年03月02日 17:07
  • 1544

Hive数据仓库--HiveQL视图和索引

上篇文章中讲完了查询的相关操作,接下来就是视图与索引了,Hive中的视图的作用总的来说就是为了简化查询语句,是一个逻辑上的视图,而不是物化的视图。索引则是加快查询速度的比较重要的手段,之前的Mysql...
  • wangyang1354
  • wangyang1354
  • 2016年09月29日 21:51
  • 2861

Oracle之创建表、序列、索引和视图

本文主要包括:    · 创建、修改和删除表    · 如何创建并使用序列:序列可以生成一系列数字    · 如何创建并使用索引:索引可以提高查询的性能    · 如何创建并使用视图:视图是预定义的查...
  • u012456926
  • u012456926
  • 2014年11月30日 22:09
  • 2569

Oracle 数据库字典 视图 基表

1.数据字典 (存放在sys方案里面) 1.是oracle数据库中重要的组成部,提供了数据库的一些系统信息。 2.它是只读表(数据字典基表)和视图(数据字典视图)的集合,数据库字典的所有者为sys用...
  • luobing_csdn
  • luobing_csdn
  • 2017年03月27日 10:54
  • 89

SQLServer 动态sql创建指定数据库下的视图

如果想要动态的创建指定数据库的视图,例如:编辑的sql脚本在oem数据库下,想要动态创建一个视图到KK_test数据库下,可以使用如下方法。 Sql代码   /** 模...
  • dotedy
  • dotedy
  • 2016年01月11日 16:45
  • 996

Oracle12C--instead-of触发器(五十六)

在视图上定义替代触发器 定义:对视图进行触发器的定义,被称为替代(instead-of)触发器; 视图的问题:如果定义了一个由多张数据表一起显示的视图,这个时候用户是无法对此视图执行更新或增加...
  • qq_33301113
  • qq_33301113
  • 2017年08月15日 21:29
  • 411

在Oracle中使用多表连接创建视图

有一个表A:ID,DATE,NAME(ID为主键); 表B:ID,DATE,AGE(ID,DATE为主键); 表C:ID,DATE,PID,SALARY(ID,DATE,PID为主键); ...
  • aiw365215066
  • aiw365215066
  • 2014年05月03日 16:00
  • 1463
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:基于两个基表创建视图
举报原因:
原因补充:

(最多只允许输入30个字)