У меня следующий запрос, таблица PCA и ПК имеют схожую структуру (одинаковые столбцы).
select session, wc, sum(duration) / (sum(delta) + sum(duration)) as wc_efficiency from
(
SELECT
a.session, a.panel,
a.line_location as WC,
a.line_duration as duration,
a.line_lead_duration - b.line_lead_duration as delta
FROM PCA a
join PC b
on a.batch = b.batch and a.session = b.session and a.panel = b.panel
where a.line_location is not null
union
SELECT
a.session, a.panel,
a.completion_location as WC2,
a.completion_duration as duration2,
a.completion_lead_duration - b.completion_lead_duration as delta2
FROM PCA a
join PC b
on a.batch = b.batch and a.session = b.session and a.panel = b.panel
where a.completion_location is not null
)
group by session, wc
Теперь я хочу найти wc2 & wc_efficiency2 для длительности 2 и delta2 в виде отдельных столбцов. Для этого я обновляю свои запросы следующим образом:
select session, wc1, sum(duration1) / (sum(delta1) + sum(duration1)) as wc_efficiency1, wc2, sum(duration2) / (sum(delta2) + sum(duration2)) as wc_efficiency2 from
(
SELECT
a.session as ss, a.panel as pl,
a.line_location as WC1,
a.line_duration as duration1,
a.line_lead_duration - b.line_lead_duration as delta1
FROM PCA a
join PC b
on a.batch = b.batch and a.session = b.session and a.panel = b.panel
where a.line_location is not null
) t1
join
(
SELECT
a.session as ss, a.panel as pl,
a.completion_location as WC2,
a.completion_duration as duration2,
a.completion_lead_duration - b.completion_lead_duration as delta2
FROM PCA a
join PC b
on a.batch = b.batch and a.session = b.session and a.panel = b.panel
where a.completion_location is not null
) t2
ON t1.ss = t2.ss and t1.pl = t2.pl
group by wc1, wc2
Запрос не запускается, я не могу найти ошибку.