如何在T-SQL中显示相同合同的所有名称 [英] How to show all names for identical contract in T-SQL
问题描述
我有这样的查询,我给我看了一些很好的结果。
pre $ select
vup.UgovorId,
count(P.Naziv)as BROJNAZIVA
from
[TEST_Ugovori_Prod] .dbo.VezaUgovorPartner as vup
inner join
[TEST_MaticniPodaci2]。[dbo]。[合作伙伴] as p on vup.PartnerId = p.PartnerID
group by
vup.UgovorId
结果是这样的(第一行是vup.UgovorId,第二行是p.Naziv):
1264 1
1265 3
但是我想显示所有p.Naziv,当该行有多于一个那vup.UgovorId喜欢字符串,所以我会这样:
1264马克
1265Jerry,Philip ,Tom
我认为这是的问题你正在努力解决?
我不确定您使用的是什么技术,但这至少可以为您提供一些指导。
所以你的代码看起来像这样:
select
vup.UgovorId,
substring(
(
从'TEST_MaticniPodaci2'。[dbo]。 .PartnerID
ORDER BY P.Naziv
对于XML PATH('')
),2,1000)[名称]
从
[TEST_Ugovori_Prod] .dbo。 VezaUgovorPartner as vup
group by vup.UgovorId
I have query like this, and i shows me sort of good results
select
vup.UgovorId,
count(P.Naziv) as BROJNAZIVA
from
[TEST_Ugovori_Prod].dbo.VezaUgovorPartner as vup
inner join
[TEST_MaticniPodaci2].[dbo].[Partner] as p on vup.PartnerId = p.PartnerID
group by
vup.UgovorId
Results are like this (first row is vup.UgovorId, second is p.Naziv):
1264 1
1265 3
But I want to show all p.Naziv when that row has more then one for that vup.UgovorId like string so I would be like this:
1264 "Mark"
1265 "Jerry, Philip, Tom"
I think this is the issue you are trying to solve?
I am not sure what technology you are using, but this may at least provide you some guidance.
So your code would look something like this:
select
vup.UgovorId,
substring(
(
Select ','+ P.Naziv AS [text()]
From [TEST_MaticniPodaci2].[dbo].[Partner] as p
Where vup.PartnerId = p.PartnerID
ORDER BY P.Naziv
For XML PATH ('')
), 2, 1000) [Names]
from
[TEST_Ugovori_Prod].dbo.VezaUgovorPartner as vup
group by vup.UgovorId
这篇关于如何在T-SQL中显示相同合同的所有名称的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!