Object 来自不同表的Case-Else语句

Object 来自不同表的Case-Else语句,object,universe,Object,Universe,我试图根据某种类型的声明检索名称。看起来很容易,但对我来说不起作用。我正在使用两个主表,claim和exposure,以及一个contactname表。每个索赔可以有多个风险,但每个风险只能有一个索赔。两个表都包含nameID字段-claim.nameID和exposure.nameID。nameID与ContactName表相关 联系人姓名 ID名称 111吉姆 222 Bob 333约翰 444 Sam 555walt 通常,每个索赔可以有多个风险,并且索赔上的风险可以有相同或不同的名称。名

我试图根据某种类型的声明检索名称。看起来很容易,但对我来说不起作用。我正在使用两个主表,
claim
exposure
,以及一个
contactname
表。每个
索赔
可以有多个
风险
,但每个
风险
只能有一个
索赔
。两个表都包含
nameID
字段-
claim.nameID
exposure.nameID
nameID
ContactName
表相关

联系人姓名

ID名称

111吉姆

222 Bob

333约翰

444 Sam

555walt

通常,每个
索赔
可以有多个
风险
,并且
索赔
上的
风险
可以有相同或不同的名称。名称
id
可在
曝光
上找到

exposure.nameID加入ContactName.ID

Claim Claim.nameID ExposureNo exposure.nameID Name

一个空的111 Jim

一个空的222 Bob

一个空的3333约翰

B空1444 Sam

B空2444 Sam

工人的补偿要求是不同的。每个工人补偿索赔可以有多个风险敞口,但所有风险敞口都有相同的名称。由于索赔上的风险敞口具有相同的名称,因此可以找到名称ID,而不是在风险敞口表中,而是在索赔表中。如图所示……claim.nameID将ContactName.ID合并为ClaimContactName

Claim Claim.nameID ExposureNo exposure.nameID Name

C 111 1空Jim

C 111 2空Jim

C 111 3空Jim

D 555 1空沃尔特

D 555 2空沃尔特

我可以获取非工人公司
索赔的名称
,也可以获取
工人公司索赔的名称
。然而,当我把这两个查询放在一起时,我没有得到任何结果

Select
CASE WHEN @Select(Claim\Policy Type) = 'Workers'' Compensation' THEN
CASE WHEN ClaimContact.Name IS NULL AND ClaimContact.Name.FirstName IS NULL THEN ClaimContact.LastName
WHEN ClaimContact.Name IS NOT NULL THEN ClaimContact.Name
ELSE ClaimContact.FirstName + Space(1) + ClaimContact.LastName END
ELSE
CASE WHEN Contact.Name IS NULL AND Contact.FirstName IS NULL THEN Contact.LastName 
WHEN Contact.Name IS NOT NULL THEN Contact.Name
ELSE Contact.FirstName + Space(1) + Contact.LastName END
END

我没有做过很多这方面的工作,但是我真的需要帮助来解决这个问题。先谢谢你

这是针对使用信息设计工具的SAP Universe。我最终创建了一个派生表,该表提供了我所需要的信息,包括在此过程中学习了一些新的东西。

这是针对使用信息设计工具的SAP Universe。我最终创建了一个派生表,它提供了我所需要的东西,包括一路学习新的东西。

这是什么味道和版本的宇宙?据我所知,Universe SQL不接受CASE WHEN语法,所以我假设这是错误标记,或者您正在使用与Universe交互的东西。这是Universe的什么风格和版本?据我所知,Universe SQL不接受CASE WHEN语法,所以我假设这是错误标记,或者您正在使用与Universe交互的东西。