MySQL表视图限制

时间:2010-01-14 17:06:30

标签: sql mysql sql-view

MySQL SQL Views的功能是否存在任何限制?

例如:您可以使用“JOIN”命令创建表格视图吗?

6 个答案:

答案 0 :(得分:5)

有关视图限制的详细信息,请阅读Restrictions on Views

答案 1 :(得分:0)

MySQL允许JOIN命令

MySQL Create View syntax

答案 2 :(得分:0)

关于加入,是的:

mysql> create table foo (i int);
Query OK, 0 rows affected (0.03 sec)

mysql> create table bar (i int);
Query OK, 0 rows affected (0.03 sec)

mysql> create view foobar as select foo.i as foo_i, bar.i as bar_i from foo join bar on (foo.i=bar.i);
Query OK, 0 rows affected (0.02 sec)

但正如其他人的回答所指出的那样,手册是一个很好的资源。

答案 3 :(得分:0)

简短回答 - 是的。在两个单词视图中只命名为select(当然没有顺序)。

答案 4 :(得分:0)

与SQL中的其他内容一样,语法,功能和可能性取决于您正在使用的数据库管理系统。但加入表格是非常基本的东西。没有它,观点就没什么用了。

答案 5 :(得分:0)

  1. 临时表:

    CREATE TEMPORARY TABLE super (id int);
    
    mysql> CREATE OR REPLACE view cat AS SELECT * FROm super;
    
    ERROR 1352 (HY000): View's SELECT refers to a temporary table 'super'
    
  2. 系统和本地变量:

    mysql> SELECT @sosize;//1000
    
    mysql> CREATE OR REPLACE view cat AS SELECT *,@sosize FROm super;
    ERROR 1351 (HY000): View's SELECT contains a variable or parameter
    
  3. 子查询:

    CREATE OR REPLACE view cat AS SELECT * FROm SELECT * FROM super;
    ERROR 1349 (HY000): View's SELECT contains a subquery in the FROM clause