在数据源视图中定义命名查询(Analysis Services)

命名查询是表示为表的 SQL 表达式。 在命名查询中,可以指定 SQL 表达式以选择从一个或多个数据源中的一个或多个表返回的行和列。 命名查询与数据源视图(DSV)中具有行和关系的任何其他表类似,但命名查询基于表达式。

命名查询允许扩展 DSV 中现有表的关系架构,而无需修改基础数据源。 例如,一系列命名查询可用于将复杂维度表拆分为更小、更简单的维度表,以便在数据库维度中使用。 命名查询还可用于将一个或多个数据源中的多个数据库表联接到单个数据源视图表中。

创建命名查询

注释

不能将命名计算添加到命名查询,也不能将命名查询基于包含命名计算的表。

创建命名查询时,可以指定名称、返回表的列和数据的 SQL 查询,以及命名查询的说明(可选)。 SQL 表达式可以引用数据源视图中的其他表。 定义命名查询后,命名查询中的 SQL 查询将发送到数据源的提供程序,并作为一个整体进行验证。 如果提供程序在 SQL 查询中找不到任何错误,则会将列添加到表中。

SQL 查询中引用的表和列不应限定,也不应由表名限定。 例如,若要引用表中的 SaleAmount 列,SaleAmountSales.SaleAmount是有效的,但dbo.Sales.SaleAmount会生成错误。

注意 定义查询 SQL Server 2000 或 SQL Server 7.0 数据源的命名查询时,包含相关子查询的命名查询和 GROUP BY 子句将失败。 有关详细信息,请参阅Microsoft知识库中 包含相关子查询和 GROUP BY 的 SELECT 语句的内部错误

添加或编辑命名查询

  1. 在 SQL Server Data Tools (SSDT)中,打开项目或连接到包含要在其中添加命名查询的数据源视图的数据库。

  2. 在解决方案资源管理器中,展开 “数据源视图 ”文件夹,然后双击数据源视图。

  3. 在“ 关系图 ”窗格中,右键单击打开的区域,然后单击“ 新建命名查询”。

  4. 在“ 创建命名查询 ”对话框中,执行以下作:

    1. 在“ 名称” 文本框中,键入查询名称。

    2. (可选)在 “说明 ”文本框中,键入查询的说明。

    3. “数据源 ”列表框中,选择要对其执行命名查询的数据源。

    4. 在底部窗格中键入查询,或使用图形查询生成工具创建查询。

    注释

    查询生成用户界面(UI)取决于数据源。 与其获取图形界面,不如选择文本界面的通用 UI。 可以使用这些不同的 UI 完成相同的任务,但必须以不同的方式进行。 有关详细信息,请参阅“创建或编辑命名查询”对话框(Analysis Services - 多维数据)。

  5. 单击 “确定” 。 显示两个重叠表的图标显示在表标题中,指示表已被命名查询替换。

另请参阅

多维模型中的数据源视图
在数据源视图中定义命名计算(分析服务)