确定视图中列的原始表

时间:2013-08-06 07:58:27

标签: mysql

是否可以找到MySQL视图中的列所属的表的名称?

如果视图构造为

CREATE VIEW alpha_view AS
    SELECT alpha.col1, alpha.col2, beta.col2 FROM alpha
    INNER JOIN beta
        ON alpha.col1=beta.col1;

然后在我编辑时,我想仅影响alpha.col1alpha.col2,因为beta.col2是从另一个表格派生的。

我认为最容易知道它是否可编辑的方法来自于知道原始表是否与视图的FROM子句匹配。

这是否可能,或者我应该只为我的解析脚本列出可编辑的列?

1 个答案:

答案 0 :(得分:2)

是的,有可能。只需使用别名(通过AS关键字)为结果列指定不同的名称。

CREATE VIEW alpha_view AS
SELECT alpha.col1 AS a_col1, alpha.col2 AS a_col2, beta.col2 AS b_col2 FROM alpha
INNER JOIN beta
ON alpha.col1=beta.col1;