Здравствуйте, у меня есть код Postgresql, который возвращает несколько значений в подзапросе, следующем ниже. что я хочу вернуть год, месяц, регион, имя, общий доход (у этого есть условное где) и общий объем продаж (у этого есть условное где, которое имеет другое условное с общим поступлением). Конечно, моя логика неверна. но кто-нибудь поможет мне решить это дело?
select
distinct
x.year_s_date Tahun,
x.month_s_date Bulan,
y.regionalname Region,
y.namarm nama_rm,
(select
distinct sum(s_totalfinancing) incoming
from staging.main_eform_kpm_final a
inner join (
select *
from landing.confins_dwh_rmkmb
where enddate > '2020-01-01'
) b on a.branch_code = b.branchid
where a.db_source is not null
group by a.year_s_date, a.month_s_date, b.regionalname, b.namarm
),
(
select distinct sum(s_totalfinancing) sales
from staging.main_eform_kpm_final a
inner join (
select *
from landing.confins_dwh_rmkmb
where enddate > '2020-01-01'
) b on a.branch_code = b.branchid
where a.db_source is not null and a.db_source_2 is not null and lineage ='1'
group by a.year_s_date, a.month_s_date, b.regionalname, b.namarm
)
from staging.main_eform_kpm_final x
inner join (
select *
from landing.confins_dwh_rmkmb
where enddate > '2020-01-01'
) y on x.branch_code = y.branchid
Используйте
limit 1
в своем подзапросеэто не помогает, потому что 1-й подзапрос и 2-й подзапрос отличаются только тем, где условно, если использовать ограничение 1, которое возвращает только одно значение. Я проверил, что для каждого подзапроса он возвращает разное количество
Привет @HandriMauludinMaulana, лучше, если вы предоставите структуру таблицы с примерами данных и ожидаемым результатом. Несколько взаимосвязанных подзапросов могут снизить производительность.