У меня есть запрос из 4-х различных таблиц, и я хочу, чтобы Concat одно из значений полей в одной строке, например, я хочу следующий результат запросаПолучить несколько значений в одном поле
**BuildName ConfigurationName FileName Name RunIDMax**
Build_20131213.5 Default configuration Screenshot2.png User1 354
Build_20131213.5 Default configuration Screenshot1.png User1 354
будет выглядеть это:
**BuildName ConfigurationName FileName Name RunIDMax**
Build_20131213.5 Default configuration Screenshot2.png, Screenshot1.png User1 354
Я следующий запрос:
select *
from (select TestPlanName, TestCaseId, AreaPath, IterationPath, TestSuiteSuitePath, ResultTestCaseId, ResultTest, ResultOutcome, max(ResultDate) as MaxResultDate , BuildName, ConfigurationName, FileName, Name, ErrorMessage, max(TA.TestRunId) as RunIDMax
from
[Tfs_Warehouse].[dbo].[DimPerson] (nolock) AS DTRO inner join
[tfs_warehouse].dbo.TestResultView (nolock) a on a.ResultExecutedBySK = PersonSK inner join
[Tfs_DefaultCollection].[dbo].[tbl_Attachment] (nolock) AS TA ON a.TestRunId = TA.TestRunId inner join
[Tfs_DefaultCollection].[dbo].[tbl_TestActionResult] (nolock) AS TAR on TA.TestRunId = Tar.TestRunId
group by TestCaseId,TestPlanName, AreaPath, IterationPath, TestSuiteSuitePath, ResultTestCaseId, ResultTest, ResultOutcome, BuildName, ConfigurationName, FileName, Name, ErrorMessage)
AS b
where
ResultOutcome <> 'Never Run' and (BuildName IN (@BuildName) or @BuildName = null) and (TestPlanName In (@TestPlanName) or @TestPlanName = null)
and TestSuiteSuitePath is not null
and BuildName is not null order by RunIDMax desc
И я пытался использовать этот запрос:
select STUFF(
(select ',' + CAST(FileName as nvarchar)
from [Tfs_DefaultCollection].[dbo].[tbl_Attachment]
group by FileName
for xml path('')
),1,1,'')
но я не смог найти правильный способ его интеграции в основной запрос.
Это вид на линии, так что вы должны будете его псевдоним. Можете ли вы опубликовать, как вы пытались его интегрировать? Вы получаете синтаксическую проблему или просто неожиданные результаты? – janarde
** Это проблема с презентацией **, поэтому ее следует обрабатывать с помощью вашего уровня представления, например. отчет, веб-страницу и т. д. – gvee