在 Liquibase 中,我如何表示使用 postgres 的通用 table 表达式(CTE)的视图?
In Liquibase, how do I represent a view that uses common table expressions(CTE) for postgres?
我想在 liquibase 中表达我的观点,但我正在努力弄清楚如何表示 CTE。视图定义为:
CREATE OR REPLACE VIEW public.all_parts
AS
WITH parts AS (
SELECT DISTINCT master.part_number
FROM public.master
UNION
SELECT DISTINCT subassembly.part_number
FROM public.subassembly
UNION
SELECT DISTINCT subassembly.parent_pnum
FROM public.subassembly
), parents AS (
SELECT DISTINCT subassembly.parent_pnum
FROM public.subassembly
)
SELECT parts.part_number,parts.parent_pnum
FROM parts;
@a_horse_with_no_name 的回答有效。现在唯一的问题是如何管理更新,因为您基本上必须在不同的文件中拥有新版本的视图,这违背了将它们置于版本控制中的目的。
我想在 liquibase 中表达我的观点,但我正在努力弄清楚如何表示 CTE。视图定义为:
CREATE OR REPLACE VIEW public.all_parts
AS
WITH parts AS (
SELECT DISTINCT master.part_number
FROM public.master
UNION
SELECT DISTINCT subassembly.part_number
FROM public.subassembly
UNION
SELECT DISTINCT subassembly.parent_pnum
FROM public.subassembly
), parents AS (
SELECT DISTINCT subassembly.parent_pnum
FROM public.subassembly
)
SELECT parts.part_number,parts.parent_pnum
FROM parts;
@a_horse_with_no_name 的回答有效。现在唯一的问题是如何管理更新,因为您基本上必须在不同的文件中拥有新版本的视图,这违背了将它们置于版本控制中的目的。