2

我正在尝试从我创建的视图中选择某些值。声明如下:

SELECT * FROM dashboard.team
WHERE ac2012.acx_users.id = 1;

如您所见,这里引用了 2 个数据库:

  1. 仪表板数据库,团队表
  2. ac2012 数据库,acx_users.id 表

ac2012.acx_users.id 是原始 Create View 语句中的正则表达式,我正在使用它,因为我当然不能在 Where 子句中使用 ALIAS ......但是,这显示了一个错误:

Error Code 1054: Unknown column 'ac2012.acx_users.id' in 'where clause'

我不确定如何让它工作,因为在这种情况下我需要引用另一个数据库,但它无法识别数据库。任何提示将不胜感激。

4

2 回答 2

2

由于您从视图中进行选择,因此基础数据库不再可见。您只能看到视图呈现的内容,作为视图所在的数据库的一部分,因此 tryWHERE acx_users.id = 1或您在视图定义中将该字段别名的任何内容。

于 2012-10-31T04:37:05.263 回答
0
    SELECT * FROM dashboard.team
    LEFT OUTER JOIN ac2012 ON ac2012.CommonColumnName=dashboard.CommonColumnName
    WHERE ac2012.acx_users.id = 1;

======================
请用原始列名替换...

于 2012-10-31T04:45:26.023 回答