Это код, который у меня есть в настоящее время, который тянет 2 верхних контакта, но поскольку каждая компания имеет более 2 контактов, когда я ввожу на экран USERID (это необходимо), он дает мне строки со всеми идентификаторами пользователей для компании, хотя онине мои лучшие 2 контакта.
select companyid,
userid,
(case when seqnum = 1 then username end) as Contact1,
(case when seqnum = 2 then username end) as Contact2,
from (
select *, row_number() over (partition by companyid order by username) as
seqnum from
( SELECT b.userid, username, a.companyid from [UsersInCompanies] a
JOIN [Companies] c on a.companyid = c.companyid
join [aspnet_Users] b on a.userid = b.userid ) t ) l
Набор результатов Я получаю
CompanyID Userid Contact1 Contact2
1 xyz-78 Jane Doe1 NULL
1 uik-90 NULL JD2
1 jkl-70 NULL NULL
1 abc-60 NULL NULL
Желаемый результат
CompanyID Userid Contact1 Contact2
1 xyz-78 JaneDoe1 NULL
1 uik-90 NULL JaneDoe2
Должен ли я использовать какие-либо функции COUNT & TOP?