【发布时间】:2014-04-09 20:17:08
【问题描述】:
我的查询需要帮助。我正在尝试连接 DonorIntent,以便每个 BudgetNbr 与 DonorIntnet 字段具有一对一的关系。目前我排除了具有多个 DonorIntent(820655 和 820885)的 BudgetNbrs
以下内容对我不起作用,所以任何帮助都会很棒!
SELECT
vwGEGiftEndowmentSummary.BudgetNbr
,vwGEGiftEndowmentSummary.BudgetName
,ODSBudgetIndexCurrent.OrgCode
,ODSBudgetIndexCurrent.BudgetStatus
,DonorIntent = STUFF((
SELECT ',' + vwGEGiftEndowmentSummary.DonorIntent
FROM vwGEGiftEndowmentSummary di
WHERE di.BudgetNbr = vwGEGiftEndowmentSummary.BudgetNbr
FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '')
FROM
vwGEGiftEndowmentSummary
INNER JOIN SOMOrgDeptGroups
ON vwGEGiftEndowmentSummary.Org_dept = SOMOrgDeptGroups.OrgDeptLevel
INNER JOIN ODSBudgetIndexCurrent
ON vwGEGiftEndowmentSummary.BudgetNbr = ODSBudgetIndexCurrent.BudgetNbr
WHERE
SOMOrgDeptGroups.ExtFundExpGroup = N'ADMIN'
AND ODSBudgetIndexCurrent.BudgetType IN (N'06', N'54')
AND vwGEGiftEndowmentSummary.BudgetNbr NOT IN (N'820655', N'820885')
GROUP BY
vwGEGiftEndowmentSummary.BudgetNbr
,vwGEGiftEndowmentSummary.BudgetName
,DonorIntent
,ODSBudgetIndexCurrent.OrgCode
,ODSBudgetIndexCurrent.BudgetStatus
【问题讨论】:
-
没用是很模糊的。
-
抱歉,我在 powerpivot 中收到一条错误消息,指出当 BudgetNbr 是主键时,它正在提取重复项。这意味着 DonorIntent 字段连接不正确。
-
尝试用 STUFF 重命名该字段而不是现有列。
-
像这样(出现同样的错误信息)? DonorIntents = STUFF((
-
错误消息:“GE 目的意图”表中的“BudgetNbr”列包含重复值“820885”,这对于多对一关系一侧的列或用作表的主键的列。
标签: sql sql-server pivot powerpivot