Я пытаюсь создать представление из существующих данных представлений, но также, если есть определенные строки, которых не существует для комбинирования детали / даты, то эти линии должны быть созданы. У меня есть запрос ниже, который показывает, что у меня есть в настоящее время для конкретных s_date/part_no
комбо:
SELECT
s_date,
part_no,
issue_group,
s_level,
qty_filled
FROM
current_view
WHERE
part_no = 'xxxxx'
AND s_date IN (
'201802',
'201803'
)
ORDER BY
s_date,
part_no,
issue_group,
DECODE(s_level, '80', 1, '100', 2, 'Late', 3)
Который производит ниже:
Я знаю, как создать представление с этими данными, это самая простая часть. Но мне нужна строка для каждой комбинации issue_group and s_level
, и, если это созданная строка, поставить 0 в качестве qty_filled
.
Каждое комбо part_no / s_date
должно иметь 6 строк, которые идут вместе с ним
- issue_group = '1' / s_level = '80'
- issue_group = '1' / s_level = '100'
- issue_group = '1' / s_level = 'Late'
- issue_group = '2/3 ' / s_level = '80'
- issue_group = '2/3 ' / s_level = '100'
- issue_group = '2/3 ' / s_level = 'Late'
Таким образом, если одна из вышеперечисленных комбинаций уже существует для текущего s_date/part_no
, то она, очевидно, берет информацию qty_filled
из текущего представления. Если нет, то создается новая строка и qty_filled = 0
. Поэтому я пытаюсь заставить его выглядеть так:
Я только показал 1 часть, с парой свиданий, просто чтобы понять суть. В таблице содержится 10 000+ частей, и для каждой из 6 комбинаций Issue_group / s_level никогда не будет более 1 комбо части / даты.