0

合体を使用して名前の文字列を返しています。単一のクエリとして実行すると問題はありませんが、より大きなクエリに入れたい場合は少し困惑します。

以下は動作するビットです:

DECLARE @return varchar(200)

SELECT @return = COALESCE(@return + ', ', '') +
                 CAST((select FileAs) AS varchar(30))
from Objects
where ObjectId in (select objectid from  dbo.Get_XML_Links(2335))
select @return

しかし、次のように、名前のリストをより大きなクエリに追加したいと思います。

select  det.Description,
        StartTime, 
        EndTime,
        THE STRING OF NAMES

from DiaryEvents de
inner join DiaryEventTypes det on det.DiaryEventTypeID = de.EventTypeID
where EventTypeID in (29,40)

何をする必要があるのか​​ よくわかりません(または、この形式で可能かどうか!)

4

1 に答える 1

0

上記のコメントとSQL Authorityに関する非常に便利な記事のおかげで、次のように解決しました。

select  det.Description,
        StartTime, 
        EndTime, 
        (
        SELECT SUBSTRING(
        (select ',' + FileAs
        from Objects
        where ObjectId in (select objectid from dbo.Get_XML_Links(de.diaryeventid) where ObjectTypeSystemCode = 'CCT')
        FOR XML PATH('')),2,200000) 
        )AS Contacts


from DiaryEvents de
inner join DiaryEventTypes det on det.DiaryEventTypeID = de.EventTypeID
where EventTypeID in (29,40)
于 2012-09-17T15:44:46.817 に答える