代码之家  ›  专栏  ›  技术社区  ›  Derek Adair

MySQL表视图限制

  •  1
  • Derek Adair  · 技术社区  · 15 年前

    功能是否有任何限制 SQL Views 对于MySQL?

    你能用“join”命令创建一个表视图吗?

    6 回复  |  直到 9 年前
        1
  •  5
  •   Bill Karwin    15 年前

    你应该阅读 Restrictions on Views 有关视图限制的详细信息。

        2
  •  0
  •   Trevor    15 年前

    mysql允许join命令

    MySQL Create View syntax

        3
  •  0
  •   Alexey Sviridov    15 年前

    简短的回答-是的。在两个词中,视图刚刚命名为select(当然没有order by)。

        4
  •  0
  •   Álvaro González    15 年前

    与SQL中的其他功能一样,其语法、特性和可能性取决于您所使用的数据库管理系统。但是连接表格是非常基本的东西。没有它,视图就没有多大用处。

        5
  •  0
  •   ggiroux    15 年前

    关于加入,是:

    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)
    

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

        6
  •  0
  •   marc_s    9 年前
    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. Subqueries:

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