【问题标题】:What is meant by 'query modification' as an approach to implementing views?“查询修改”作为实现视图的方法是什么意思?
【发布时间】:2011-06-07 19:56:18
【问题描述】:

只是做了一些修改,其中一个问题是:

"解释一下'query是什么意思 修改'作为一种方法 实现视图。”

现在,我不太确定如何回答这个问题……我知道什么是视图、如何创建它们以及为什么要使用它们等等,但是这个问题到底想知道什么?

【问题讨论】:

  • 答案肯定比问题简单很多。

标签: mysql sql views


【解决方案1】:

这是来自David Meier's works on relational theory的理论概念。

当您在查询中使用视图时,如下所示:

CREATE VIEW v_filtered
AS
SELECT  *
FROM    mytable
WHERE   mycolumn = 1

SELECT  *
FROM    v_filtered
JOIN    othertable
ON      otherid = myid

,要执行您的查询,数据库引擎应该能够将 虚拟关系(如您的视图)上的查询重写为使用 基本关系的查询,因为实际存储的内容:

SELECT  *
FROM    mytable
JOIN    othertable
ON      otherid = myid
WHERE   mycolumn = 1

这个过程称为查询修改。

【讨论】:

  • 哦,好吧,所以基本上答案将是“数据库引擎应该能够将虚拟关系上的查询(如您的视图)重写为使用基本关系的查询”.. .?
  • @ChrisEdwards:不知道这是否正是您的导师想听到的,但是是的,差不多。如果我做了那个作业,我只会参考这本书。
  • 这和SQL Server中的视图扩展(即宏扩展)一样吗?
  • @Quassnoi:这么认为。谢谢! (+1,顺便说一句:)
猜你喜欢
  • 1970-01-01
  • 2014-09-14
  • 1970-01-01
  • 2012-01-05
  • 2019-11-01
  • 2011-05-26
  • 2021-07-16
  • 2014-10-16
  • 1970-01-01
相关资源
最近更新 更多