http://www.mysqltutorial.org/create-sql-updatable-views.aspx
这一条规定如下:
SELECT语句不能引用多个表。这意味着它不能在FROM子句中包含多个表,不能在JOIN语句中包含其他表,也不能在其他表中包含UNION。
这是真的吗为什么?如果没有在每个查询字符串中使用联接,那么如何查询两个相关的表,就像它是一个表(通过一个视图)?
发布于 2011-06-05 10:51:15
当您创建视图时,您已经在组合这些表。他们想说的是,一般来说,您不应该有一个SELECT语句来连接一个视图和一个表。尽管你可以做到这一点,但这并不是最好的做法。视图的要点是从经常调用的多个表中创建一个具有字段的表。对于这些多个表,每个SELECT语句上的视图都比JOINing表更有效。
发布于 2011-06-05 10:50:30
该页面是关于可更新视图的,通过视图更新底层表的条件意味着您必须对视图的内容设置更多的限制,以便mysql能够将更新映射回基础表。
如果您只想从视图中读取,而不需要使用它更新底层表,则可以在视图定义中使用联接、UNION等从多个表中进行选择。
发布于 2011-06-05 10:53:01
它只适用于可更新视图。如果不能将一个视图中的多个表链接起来,那么视图的全部内容将毫无意义:)
https://stackoverflow.com/questions/6242417
复制相似问题