I am currently writing a SQL script - takes a business term, and all related synonyms. What it does is creates multiple rows (because there are multiple synonyms (can have other columns that could be multiple values as well.
What I am trying to do is to create a single row for every business term, and concatenate values (, delimited) so that I get one line item for each business term only.
Currently my SQL script is:
SELECT dbo.TblBusinessTerm.BusinessTerm, dbo.TblBusinessTerm.BusinessTermLongDesc, 
       dbo.TblBusinessTerm.DomainCatID, dbo.TblSystem.SystemName, 
       dbo.TblDomainCat.DataSteward, dbo.TblDomainCat.DomainCatName, 
       dbo.TblField.GoldenSource, dbo.TblField.GTS_table, 
       dbo.TblTableOwner.TableOwnerName, dbo.TblBusinessSynonym.Synonym 
FROM   dbo.TblTableOwner INNER JOIN
       dbo.TblBusinessTerm INNER JOIN
       dbo.TblBusinessSynonym ON dbo.TblBusinessTerm.BusinessTermID = dbo.TblBusinessSynonym.BusinessTermID INNER JOIN
       dbo.TblField ON dbo.TblBusinessTerm.BusinessTermID = dbo.TblField.BusinessTermID INNER JOIN
       dbo.TblSystem INNER JOIN
       dbo.TblTable ON dbo.TblSystem.SystemID = dbo.TblTable.SystemID ON dbo.TblField.TableID = dbo.TblTable.TableID INNER JOIN
       dbo.TblDomainCat ON dbo.TblBusinessTerm.DomainCatID = dbo.TblDomainCat.DomainCatID ON dbo.TblTableOwner.TableOwnerID = dbo.TblDomainCat.DataSteward
Is there an easy way to do this that takes performance into consideration - am new to SQL.
Thank you
I have managed to create a with statement that now concatenates my rows:
With syn as (
    select [BusinessTermID],
           syns = STUFF((SELECT  ', ' + dbo.TblBusinessSynonym.Synonym
                         FROM   dbo.TblBusinessSynonym
                         WHERE  [BusinessTermID] = x.[BusinessTermID]
                             AND    dbo.TblBusinessSynonym.Synonym <> ''
                         FOR XML PATH ('')),1,2,'')
    FROM dbo.TblBusinessSynonym AS x
    GROUP BY [BusinessTermID]
)
select * from syn
But now how can I use it in the above query where everything links?
Would want to replace dbo.TblBusinessSynonym.Synonym  with the results from syn
Any SQL 2014 developers that can assist?
 
     
     
    