视图sql类型
1. sqlserver创建了一个视图 怎么给视图的其中一个字段定义类型
case ccc when 0 then 0 else (2/ccc*100)end
修改为
case ccc when 0 then 0.0 else (2.0/ccc*100)end
2. 怎样查看SQL视图的字段类型
oracle 的话,用PL/SQL Developer的话,邮件菜单中有个view选项,可以查看column的类型,限制条件,keys值
sql的话试下 desc [table name]
3. 视图sql的功能
使用SQL视图可以实现下列任一或所有功能:
1,将用户限定在表中的特定行上。
例如,只允许雇员看见工作跟踪表内记录其工作的行。
2,将用户限定在特定列上。
例如,对于那些不负责处理工资单的雇员,只允许他们看见雇员表中的姓名列、办公室列、工作电话列、邮件列和部门列,而不能看见任何包含工资信息或个人信息的列。
3,将多个表中的列联接起来,使它们看起来象一个表。
4,聚合信息而非提供详细信息。
例如,显示一个列的和,或列的最大值和最小值。 一个视图可以引用另一个视图。例如,titleview 显示的信息对管理人员很有用,但公司通常只在季度或年度财务报表中才公布本年度截止到现在的财政数字。可以建立一个视图,在其中包含除 au_ord 和 ytd_sales 外的所有 titleview 列。使用这个新视图,客户可以获得已上市的书籍列表而不会看到财务信息:
CREATE VIEW Cust_titleview
AS
SELECT title, au_lname, price, pub_id
FROM titleview
视图可用于在多个数据库或 Microsoft® SQL Server™ 2000 实例间对数据进行分区。分区视图可用于在整个服务器组内分布数据库处理。服务器组具有与服务器聚集相同的性能优点,并可用于支持最大的 Web 站点或公司数据中心的处理需求。原始表被细分为多个成员表,每个成员表包含原始表的行子集。每个成员表可放置在不同服务器的数据库中。每个服务器也可得到分区视图。分区视图使用Transact-SQLUNION 运算符,将在所有成员表上选择的结果合并为单个结果集,该结果集的行为与整个原始表的复本完全一样。例如在三个服务器间进行表分区。在第一个服务器上定义如下的分区视图:
CREATE VIEW PartitionedView AS
SELECT *
FROM MyDatabase.dbo.PartitionTable1
UNION ALL
SELECT *
FROM Server2.MyDatabase.dbo.PartitionTable2
UNION ALL
SELECT *
FROM Server3.MyDatabase.dbo.PartitionTable3
在其它两个服务器上定义类似的分区视图。利用这三个视图,三个服务器上任何引用 PartitionedView 的 Transact-SQL 语句都将看到与原始表中相同的行为。似乎每个服务器上都存在原始表的复本一样,而实际上每个表只有一个成员表和分区视图。有关更多信息,请参见视图使用方案。
只要所做的修改只影响视图所引用的其中一个基表,就可以更新所有 SQL Server 版本内的视图(可以对其执行 UPDATE、DELETE 或 INSERT 语句)。
-- Increase the prices for publisher '0736' by 10%.
UPDATE titleview
SET price = price * 1.10
WHERE pub_id = '0736'
GO
SQL Server 2000 支持可引用视图的更复杂的 INSERT、UPDATE 和 DELETE 语句。可在视图上定义 INSTEAD OF 触发器,指定必须对基表执行的个别更新以支持 INSERT、UPDATE 或 DELETE 语句。另外,分区视图还支持 INSERT、UDPATE 和 DELETE 语句修改视图所引用的多个成员表。
索引视图 是 SQL Server 2000 具有的功能,可显着提高复杂视图类型的性能,这些视图类型通常在数据仓库或其它决策支持系统中出现。
视图的结果集通常不保存在数据库中,因此视图也称为虚拟表。视图的结果集动态包含在语句逻辑中并在运行时动态生成。有关更多信息,请参见视图解析。
复杂的查询(如决策支持系统中的查询)可引用基表中的大量行,并将大量信息聚积在相对较简洁的聚合中,如总和或平均值。SQL Server 2000 支持在执行此类复杂查询的视图上创建聚集索引。当执行 CREATE INDEX 语句时,视图 SELECT 的结果集将永久存储在数据库中。SQL 语句此后若引用该视图,响应时间将会显着缩短。对基本数据的修改将自动反映在视图中。
SQL Server 2000 CREATE VIEW 语句支持 SCHEMABINDING 选项,以防止视图所引用的表在视图未被调整的情况下发生改变。必须为任何创建索引的视图指定 SCHEMABINDING。
4. SQL Server 2005系统允许创建的视图类型分别是( )、索引视图、分区视图
系统视图
5. SQL 的视图模式
从根本上来说,视图的目的只是为了给用户提供一种更有效的查询手段,不能进行增删改的操作,除非是一个表的视图,但是一个表的视图意义有多大呢?
6. SQL视图的定义和简单使用
CREATE VIEW V1 AS
SELECT 课名,COUNT(*) AS 选课人数,AVG(成绩) AS 平均成绩
FROM 课程 JOIN 选课 ON 课程.课号=选课.课号
GROUP BY 课名
GO
SELECT TOP 1 *
FROM V1
ORDER BY 平均成绩 DESC
7. SQL中表的类型
在SQL里,基本表的关键字是TABLE,是一张二维表,存放数据集的表。视图的关键字是VIEW,视图可以理解为虚拟表,里边是不存放数据的,只是存放一条查询语句,查询视图时显示的数据都是从基本表中根据条件筛选出来的结果。 其具体定义如下:(1)所谓基本表,是这样的一种表,它本身是实际存在的,每个表在存储中可用一个存储文件来表示(一个基本表就是一个关系),它不是由其他表导出的表。
(2)视图是数据库中的虚拟表,由一个或几个基本表导出,用于让用户变换角度来操作基本表。数据库中只保存视图的定义,视图中不存放对应的数据。 (3)导出表:在基本表的基础上通过定义视图而生成的表,称为导出表。导出表是虚表,其本身不存储于数据库中,数据库仅在数据字典中存储其定义。
视图(view)是在基本表之上建立的表,它的结构(即所定义的列)和内容(即所有数据行)都来自基本表,它依据基本表存在而存在。一个视图可以对应一个基本表,也可以对应多个基本表。视图是基本表的抽象和在逻辑意义上建立的新关系
8. 在sql数据库里的视图是什么意思,怎么理解
视图为原始数据库数据的一种变换,是查看表中数据的另外一种方式。可以将视图看成是一个移动的窗口,通过它可以看到感兴趣的数据。视图为从一个或多个实际表中获得的,这些表的数据存放在数据库中。那些用于产生视图的表叫做该视图的基表。一个视图也可以从另一个视图中产生。
视图的定义存在数据库中,与此定义相关的数据并没有再存一份于数据库中。通过视图看到的数据存放在基表中。
(8)视图sql类型扩展阅读
视图有很多优点,主要表现在:
1、视点集中
使用户只关心它感兴趣的某些特定数据和他们所负责的特定任务。这样通过只允许用户看到视图中所定义的数据而不是视图引用表中的数据而提高了数据的安全性。
2、简化操作
视图大大简化了用户对数据的操作。因为在定义视图时,若视图本身就是一个复杂查询的结果集,这样在每一次执行相同的查询时,不必重新写这些复杂的查询语句,只要一条简单的查询视图语句即可。可见视图向用户隐藏了表与表之间的复杂的连接操作。
3、定制数据
视图能够实现让不同的用户以不同的方式看到不同或相同的数据集。因此,当有许多不同水平的用户共用同一数据库时,这显得极为重要。
4、合并分割数据
在有些情况下,由于表中数据量太大,故在表的设计时常将表进行水平分割或垂直分割,但表的结构的变化却对应用程序产生不良的影响。如果使用视图就可以重新保持原有的结构关系,从而使外模式保持不变,原有的应用程序仍可以通过视图来重载数据。
5、安全性
视图可以作为一种安全机制。通过视图用户只能查看和修改他们所能看到的数据。其它数据库或表既不可见也不可以访问。如果某一用户想要访问视图的结果集,必须授予其访问权限。视图所引用表的访问权限与视图权限的设置互不影响。
9. 视图sql的定义
在下例中,pubs 数据库中的 titleview 是一个视图,该视图选择三个基表中的数据来显示包含常用数据的虚拟表:
CREATE VIEW titleview
AS
SELECT title, au_ord, au_lname, price, ytd_sales, pub_id
FROM authors AS a
JOIN titleauthor AS ta ON
JOIN titles AS t ON (t.title_id = ta.title_id)
之后,可以用引用表时所使用的方法在语句中引用 titleview。
SELECT *
FROM titleview 1,在索引视图中,不能使用*号,必具指定所有结果集中的列名。
2,在索引视图中,所有用到的表前都必须加表所属的架构dbo。
3,在索引视图中不能有重复的列(其实在普通视图中也有该限制)
4,在索引视图中只能创建唯一聚集索引。
10. 请问SQL中视图与查询的区别
SQL中视图与查询的区别为:功能不同、归属不同、数据来源不同。
一、功能不同
1、视图:视图可以更新字段内容并返回原表。
2、查询:查询文件中的记录数据不能修改。
二、归属不同
1、视图:视图不是一个独立的文件,它保存在数据库中。
2、查询:查询是一个独立的文件,不属于数据库。
三、数据来源不同
1、视图:视图的数据来源可以是本地数据源,也可以是远程数据源。
2、查询:查询的数据来源只有本地数据源,不能访问远程数据源。