【问题标题】:MySQL table view limitationsMySQL 表视图限制
【发布时间】:2011-01-05 04:13:54
【问题描述】:

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

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

【问题讨论】:

    标签: sql mysql sql-view


    【解决方案1】:

    您应该阅读Restrictions on Views 以了解有关查看限制的详细信息。

    【讨论】:

      【解决方案2】:

      MySQL 允许 JOIN 命令

      MySQL Create View syntax

      【讨论】:

        【解决方案3】:

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

        【讨论】:

          【解决方案4】:

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

          【讨论】:

            【解决方案5】:

            关于 JOIN,是的:

            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】:
              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
                

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2014-10-14
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2013-02-20
                • 1970-01-01
                相关资源
                最近更新 更多