Я создаю материализованное представление из двух таблиц, используя функцию array_agg
для объединения строк от table_b
до table_a
.По сути, column_c
на table_a
является массивом чисел, обнуляемым, соответствующим столбцу id
в table_b
(который имеет только два столбца, id
и description
).Однако материализованному представлению не удается включить строку для любой строки в table_a
, которая равна нулю / пуста в column_c
.
Можно ли заставить Материализованное либо (1) ввести пустой массив;или (2) нулевое значение, когда table_a
column_c
значение равно нулю?
CREATE MATERIALIZED VIEW my_materialized_view
AS
SELECT
id,
column_a,
column_b,
array_agg(description) as column_c
FROM table_a
JOIN table_b on table_b.id = any(column_c)
GROUP BY table_a.id
ORDER BY table_a.id ASC
WITH DATA;