【问题标题】:SQL Server : Table instead of very complex viewSQL Server:表而不是非常复杂的视图
【发布时间】:2014-10-22 22:14:12
【问题描述】:

通常,视图中的完整表由以下人员创建:

SELECT * 
INTO dbo.table 
FROM view

但我有一个非常复杂的视图(在 SQL Server 2005 中工作),但在 SQL Server 2008 Express 中,我收到错误消息:

内部错误:已达到表达式服务限制。请 在查询中寻找可能复杂的表达式,并尝试 简化它们。

通过消除标题<CREATE VIEW viewname AS>,我设法进行了正常查询。 所以我想将此查询复制到一个包含查询所有列的新表中。

查询(或视图)由 3 个具有大量连接的表组成,依此类推。

我的问题是,如何才能解决我的问题?

SELECT * 
INTO dbo.table 
FROM <here is my complex query, beginning with select>

不工作。

【问题讨论】:

标签: sql sql-server sql-server-2008 tsql sql-server-2005


【解决方案1】:

分两步完成:

首先使用适当的列名和类型创建表。

然后使用 INSERT INTO .... SELECT 语句,如下所示:

INSERT INTO yourNewTable
  (column1,
   column2,
   ...
  )
SELECT (your complex query)

如果查询结果与目标表的结构直接匹配,则不必明确列出列。尽管如此,出于可维护性的原因,仍建议使用它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多