Я хотел бы решить проблему с ситуацией, аналогичной следующими данными,SQL группы колонки еще игнорировать дублированный элемент другого столбца
company customer pay sequence
a x 5 1
a x 6 2
b x 3 3
b y 4 4
a y 2 5
И я хочу, чтобы получить результат, вычисляя суммирование группы «платить» компании, но дублированный клиент будет использовать только один раз, основываясь на последней последовательности. Таким образом, ожидаемый результат
company sum(pay)
a 8
b 7
Это означает, что компания «а» сумма (оплата) 8 поступает из второго ряда и с последней строкой. И компания «b» сумма (оплата) 7 поступает из 3-го и 4-го рядов. И первая строка игнорируется.
Таким образом, я использую такой запрос (PostgreSQL), чтобы решить эту проблему,
select t2.company,sum(t2.pay) from mytable t2 join (
select company,customer,max(sequence) as sequence
from mytable group by company,customer
) t1 on t1.sequence=t2.sequence group by t2.company
Я хотел бы знать, есть ли там какой-нибудь простой способ использовать запрос без подзапроса, как указано выше?
Что такое "не просто" о запросе? Мне кажется очень разумным. –