簡體   English   中英

將兩列的值以逗號分隔

[英]Getting values of two column as comma separated

我有一個查詢,我需要在兩個單獨的列中獲取查詢結果,因為我正在執行兩個單獨的查詢

 Select STUFF((SELECT ',' + cast(Task.ID as varchar(100))
                from dbo.TaskRepeted 
                join dbo.Task on Task.id = TaskRepeted.Taskid
            where TaskID IN (1,2,3,4,5,6,7,8,9)
            FOR XML PATH('')) ,1,1,'') as Tasks 
    
    UNION ALL 
    
     Select STUFF((SELECT ',' + cast(CoreTask.ID as varchar(100))
                from dbo.TaskRepeted 
                join dbo.CoreTask on CoreTask.id = TaskRepeted.Taskid
            where TaskID IN (1,2,3,4,5,6,7,8,9)
            FOR XML PATH('')) ,1,1,'') as CoreTasks 
        
        

它只顯示一列:任務

和兩行:

第一行有數據: 3344,3,43,6,7,6,7,,34,3,443,434第二行是 null

但我的數據應該是這樣的:

Tasks                               CoreTasks
3344,3,43,6,7,6,7,,34,3,443,434     0 (if null is coming, it should display me 0 else it will display the comma separated values)   

如果你想要兩列,不要使用union

 Select STUFF((SELECT ',' + cast(Task.ID as varchar(100))
                from dbo.TaskRepeted join
                     dbo.Task on Task.id = TaskRepeted.Taskid
            where TaskID IN (1,2,3,4,5,6,7,8,9)
            FOR XML PATH('')) ,1,1,'') as Tasks ,
        STUFF((SELECT ',' + cast(CoreTask.ID as varchar(100))
                from dbo.TaskRepeted join
                     dbo.CoreTask on CoreTask.id = TaskRepeted.Taskid
            where TaskID IN (1,2,3,4,5,6,7,8,9)
            FOR XML PATH('')) ,1,1,'') as CoreTasks 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM