首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >引用另一个表的SSAS命名计算

引用另一个表的SSAS命名计算
EN

Stack Overflow用户
提问于 2019-05-30 23:16:18
回答 1查看 342关注 0票数 0

我正在SSAS VS工具中进行多维分析。我有两张桌子,动物animal_intake。用animal_id和animal_intake对动物进行鉴定,用animal_id对动物进行参考。我想要做的是创建一个命名的计算程序,这样就可以在摄食日提供有关动物年龄的信息。为了计算年龄,我必须参考动物的出生日期在animal_intake命名的计算。基于文档[https://learn.microsoft.com/en-us/sql/analysis-services/multidimensional-models/define-named-calculations-in-a-data-source-view-analysis-services?view=sql-server-2017#creating-named-calculations]中描述的解决方案,我创建了以下查询,用于命名计算

代码语言:javascript
复制
(SELECT [ANIMAL].[birth_date] FROM [ANIMAL] WHERE [ANIMAL].[animal_id] =[animal_id])

只是为了了解动物的生日。不幸的是,当我单击“探索数据”VS出现以下错误时

代码语言:javascript
复制
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.

#

我不明白问题是什么-- animal_idANIMAL表的主键,birth_date字段具有NOT NULL约束。因此,对于给定的naimal_id,查询必须有一个结果。

以下是我数据库中的简化表。

动物

代码语言:javascript
复制
CREATE TABLE [ANIMAL] (
    [animal_id] CHAR(7) PRIMARY KEY,
    [birth_date] DATE REFERENCES [DATE]([exact_date]) NOT NULL
);

ANIMAL_INTAKE

代码语言:javascript
复制
CREATE TABLE [ANIMAL_INTAKE] (
    [animal_id] CHAR(7) NOT NULL REFERENCES [ANIMAL],
    [stay_number] TINYINT NOT NULL,
    [intake_date] DATE REFERENCES [DATE]([exact_date]) NOT NULL,
    PRIMARY KEY ([animal_id], [stay_number]),
);
EN

回答 1

Stack Overflow用户

发布于 2019-06-02 00:35:05

尝试以下几点:

代码语言:javascript
复制
(SELECT [ANIMAL].[birth_date] FROM [ANIMAL] WHERE [ANIMAL].[animal_id] = [ANIMAL_INTAKE].[animal_id])

我假设您在DSV中的表名为ANIMAL_INTAKE,这就是您要将命名的计算放在上面的表。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56386802

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档