File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -1173,11 +1173,7 @@ def _create_base_expression(self) -> exp.Expr:
11731173 for k , v in self ._storage_parameters .items ():
11741174 props .append (exp .Property (this = exp .to_identifier (k ), value = exp .convert (str (v ))))
11751175 if self ._with_data is not None :
1176- props .append (
1177- exp .Property (
1178- this = exp .to_identifier ("WITH_DATA" if self ._with_data else "NO_DATA" ), value = exp .Var (this = "" )
1179- )
1180- )
1176+ props .append (exp .WithDataProperty (no = not self ._with_data ))
11811177 props .extend (exp .Property (this = exp .to_identifier ("HINT" ), value = exp .convert (hint )) for hint in self ._hints )
11821178 properties_node = _wrap_properties (props )
11831179
Original file line number Diff line number Diff line change @@ -107,3 +107,13 @@ def test_builder_expressions_satisfy_required_sqlglot_arguments() -> None:
107107 assert [(type (expression ).__name__ , expression .error_messages ()) for expression in expressions ] == [
108108 (type (expression ).__name__ , []) for expression in expressions
109109 ]
110+
111+
112+ def test_materialized_view_with_data_renders_postgres_clause () -> None :
113+ expression = sql .create_materialized_view ("mv" ).as_select ("SELECT 1" ).with_data ()._create_base_expression ()
114+ assert expression .sql (dialect = "postgres" ) == "CREATE MATERIALIZED_VIEW mv AS SELECT 1 WITH DATA"
115+
116+
117+ def test_materialized_view_no_data_renders_postgres_clause () -> None :
118+ expression = sql .create_materialized_view ("mv" ).as_select ("SELECT 1" ).no_data ()._create_base_expression ()
119+ assert expression .sql (dialect = "postgres" ) == "CREATE MATERIALIZED_VIEW mv AS SELECT 1 WITH NO DATA"
You can’t perform that action at this time.
0 commit comments