2017-05-04 6 views
0

ジョブIDのテーブルと、マッチしても同じ列に連結されているすべての異なるジョブカテゴリをリストした列を作成したいとします。例として、現在、ジョブ82041には2つのカテゴリがありますが、現在は2つの行が戻っています。私はそれが "小売り、セールスアソシエイト"と言ってもらいたいと思います。複数の行のデータを同じ列にマージする

私が試したコードは以下の通りですが、誰かが私に間違っていることを教えてもらえますか?

例:

jobOrderID (No column name) 

82027 Motion Graphics    
82029 Other       
82030 Product Designer    
82041 Retail       
82041 Sales Associate    
82069 Social Media  

のコード例:

select JobOrder.jobOrderID ,  
     stuff((select distinct ', ' + cast(Category.occupation as nchar(30)) 
       from Category 
       where Category.categoryID = JobOrderCategories.categoryID 
     for xml path ('')),1,1,'')  

from JobOrder 
left outer join JobOrderCategories 
    on JobOrder.joborderid = JobOrderCategories.jobOrderID 
left outer join Category 
    on Category.categoryID = JobOrderCategories.categoryID 

where JobOrder.dateAdded > '2017-5-2' and JobOrder.dateAdded < '2017-5-3' 
    and joborder.isDeleted = 0 

order by joborder.dateAdded asc 

答えて

0

は左が

select 

JobOrder.jobOrderID, 

stuff((select distinct ', ' + cast(Category.occupation as varchar(30)) 
from Category 
left outer join JobOrderCategories on (Category.categoryID = JobOrderCategories.categoryID and joborder.jobOrderID = JobOrderCategories.joborderid) 
where Category.categoryID = JobOrderCategories.categoryID 
for xml path ('')),1,1,'') 


from JobOrder 

where JobOrder.dateAdded > '2017-5-2' and JobOrder.dateAdded < '2017-5-3' 
and joborder.isDeleted = 0 
+0

'に'を使用してコードをformat'、 '{}に学習に参加する変更することによってそれを考え出しましたツールバー。 – Parfait

+0

ノートに感謝! –

関連する問題