-3

ストアド プロシージャが 1 つあります。多くの行の値を単一の文字列に連結したかっただけです。また、最終結果は、すべての行の値を文字列として連結した特定の列を含む 1 つの行を返す必要があります。以下のコードを試しました。しかし、それはエラーをスローします。問題を見つけるのを手伝ってください。

コード

ALTER PROCEDURE [dbo].[Usp_getjobdetails] (@jobID INT, 
                                       @foos  VARCHAR(max)) 
--,@l varchar(max),@ts varchar(max)) 
AS 
  BEGIN 
  --select @en as int 
  --select @l as l.Location 
  --select @ts as ts.TechnicalSkills 
  SELECT jobcode, 
         jobtitle, 
         experiences, 
         (SELECT @foos = COALESCE(@foos + ',', '') 
                         + e.educationname 
          FROM   tbleducation 
          WHERE  educationid = je.educationid) AS Edu, 
         l.location,--=COALESCE( @l + ', ', '') + l.Location, 
         ts.technicalskills, 
         --=COALESCE ( @ts + ', ', '' )+ ts.TechnicalSkills,  
         jobdescription 
  FROM   tbljobs j 
         INNER JOIN tbljobs_education je 
                 ON je.jobid = j.jobid 
         INNER JOIN tbljobs_locations jl 
                 ON jl.jobid = j.jobid 
         INNER JOIN tbljobs_technicalskill jts 
                 ON jts.jobid = j.jobid 
         INNER JOIN tbleducation e 
                 ON e.educationid = je.educationid 
         INNER JOIN tbllocations l 
                 ON l.locationid = jl.locationid 
         INNER JOIN tbltechnicalskills ts 
                 ON ts.technicalskillid = jts.technicalskillid 
  WHERE  j.jobid = @jobID 
  END 

tbljobs tbl

JobCode   JobTitle Experience    Edu       Location        Description
PITCS41   JDev     12-14      BSC,BCA,MSC    Delhi      Asp.Net A highly

上記の結果のようなものが必要です。

4

1 に答える 1