Мне требуются следующие данные: например, шведская мужская маркаA EUR шведская женская маркаA EUR шведская мужская маркаB EUR английская мужская маркаA EUR английская женская маркаA EUR английская мужская маркаB EUR женская женская марка C EUR
EUR поступила из тот факт, что из 8000 человек 5000 используют евро, 2000 используют gbp и 1000 используют SEk. Так что самая популярная валюта - евро. Я хотел бы, чтобы он отображался для каждой строки
, чтобы получить наиболее популярную валюту max_curr
, и для каждой возвращаемой строки иметь столбец max_curr с этим значением, отображаемым
select
cdl.country
,cd.gender
,cd.brand
,t.max_curr
from customer_data_list cdl
left join customer_data cd on cd.customerid = cdr.customerid
left join
(
select
trans.customerid, a.*
from
(
select
a.*
,max(count_currency) over() as max_curr
FROM
(
select
t.currency
,count(t.currency) as count_currency
from transactions t
where t.function = 'DEPOSIT' and t.status = 'ACCEPTED'
group by t.currency
order by currency
) a
) a
left join transactions trans on trans.currency = a.currency
where count_currency = max_curr) t on t.customerid = cdl.customerid
Это не возвращает то, что мне нужно, потому что большинство записей столбца max_curr пустые. Может кто-нибудь помочь, пожалуйста?