Привет, у меня трудности с группировкой этих данных, так как они не имеют функции агрегирования. У меня есть следующие данные в 2 таблицах, и я хотел бы присоединиться как по PaymentId, так и display only 1 row of record
.
![enter image description here](https://i.stack.imgur.com/CELdE.jpg)
Вопрос:
Как отобразить окончательный результат только в 1 ROW groupby CoursePaidForMonthYear.
Я хотел бы получить все данные от Payment.*, TutorCourseCommissions.* and CoursePaidForMonthYear column in same row displaying (September, October, November)
Пример:
referenceId| TutorId| CoursePaidForMonthYear |
1 | 1019 | September, October, November OR 9,10,11|
Моя работа:
var result = from u in db.Users
join p in db.Payments on u.Id equals p.UserId
join tt in db.TutorCourseCommissions on p.Id equals tt.PaymentId into gtt
from tt in gtt.DefaultIfEmpty()
where u.Id == user.Id
GroupBy tt.CoursePaidForMonthYear ??
select new { u, p, tt };
foreach (var r in result)
{
Payment payment = new Payment();
payment.MonthToPay = (r.tt == null) ? null : common.GetMonthName(r.tt.CoursePaidForMonthYear.Month, true);
payment.Amount = r.p.Amount;
output.Add(payment);
}
return output;