SELECT DISTINCT
AcNumber,
(SELECT STUFF((SELECT '::' + (REPLACE(RTRIM(LTRIM([master].dbo.Mig_fn_cutString([master].dbo.Mig_fn_StringReduce(UPPER(NomiName)),35,',',1,'Y','F'))),',',' '))
FROM [DepNominee] DPN
WHERE (AcNumber = DPN.AcNumber)
FOR XML PATH(''), TYPE).value('(./text())[1]', 'VARCHAR(MAX)'), 1, 2, '')) AS JBL_NOM_NAME,
(SELECT STUFF((SELECT '::' + (REPLACE(RTRIM(LTRIM([master].dbo.Mig_fn_cutString([master].dbo.Mig_fn_StringReduce(UPPER(FHName)),35,',',1,'Y','F'))),',',' '))
FROM [DepNominee] DPN
WHERE (AcNumber = DPN.AcNumber)
FOR XML PATH(''),TYPE).value('(./text())[1]', 'VARCHAR(MAX)'), 1, 2, '')) AS NOM_FATH_NAME,
(SELECT STUFF((SELECT '::' + (REPLACE(RTRIM(LTRIM([master].dbo.Mig_fn_cutString([master].dbo.Mig_fn_StringReduce(UPPER(MHName)),35,',',1,'Y','F'))),',',' '))
FROM [DepNominee] DPN
--WHERE (AcNumber = DPN.AcNumber)
FOR XML PATH(''),TYPE).value('(./text())[1]', 'VARCHAR(MAX)'), 1, 2, '')) AS NOM_MOTH_NAME
FROM
[DepNominee] DPN
GROUP BY
AcNumber, NomiName
这是我的代码,我希望根据我的AccountNumber查看所有数据。但我看到只有一个数据在不同的帐号中一直重复。我附上图片:
答案 0 :(得分:2)
我怀疑问题是您在多个地方使用别名DPN
,导致您的子查询无法关联。
试试这样:
SELECT DISTINCT
AcNumber,
(SELECT STUFF((SELECT '::' + (REPLACE(RTRIM(LTRIM([master].dbo.Mig_fn_cutString([master].dbo.Mig_fn_StringReduce(UPPER(NomiName)),35,',',1,'Y','F'))),',',' '))
FROM [DepNominee] DPN2
WHERE (DPN.AcNumber = DPN2.AcNumber)
FOR XML PATH(''), TYPE).value('(./text())[1]', 'VARCHAR(MAX)'), 1, 2, '')) AS JBL_NOM_NAME,
(SELECT STUFF((SELECT '::' + (REPLACE(RTRIM(LTRIM([master].dbo.Mig_fn_cutString([master].dbo.Mig_fn_StringReduce(UPPER(FHName)),35,',',1,'Y','F'))),',',' '))
FROM [DepNominee] DPN2
WHERE (DPN.AcNumber = DPN2.AcNumber)
FOR XML PATH(''),TYPE).value('(./text())[1]', 'VARCHAR(MAX)'), 1, 2, '')) AS NOM_FATH_NAME,
(SELECT STUFF((SELECT '::' + (REPLACE(RTRIM(LTRIM([master].dbo.Mig_fn_cutString([master].dbo.Mig_fn_StringReduce(UPPER(MHName)),35,',',1,'Y','F'))),',',' '))
FROM [DepNominee] DPN2
--WHERE (DPN.AcNumber = DPN2.AcNumber)
FOR XML PATH(''),TYPE).value('(./text())[1]', 'VARCHAR(MAX)'), 1, 2, '')) AS NOM_MOTH_NAME
FROM
[DepNominee] DPN
GROUP BY
AcNumber, NomiName