@@ -1801,9 +1801,22 @@ psql_completion(const char *text, int start, int end)
1801
1801
"SET SCHEMA" );
1802
1802
/* ALTER MATERIALIZED VIEW <name> */
1803
1803
else if (Matches ("ALTER" , "MATERIALIZED" , "VIEW" , MatchAny ))
1804
- COMPLETE_WITH ("ALTER COLUMN" , "OWNER TO" , "RENAME TO" ,
1805
- "SET SCHEMA" );
1806
-
1804
+ COMPLETE_WITH ("ALTER COLUMN" , "CLUSTER ON" , "DEPENDS ON EXTENSION" ,
1805
+ "OWNER TO" , "RENAME" , "RESET (" , "SET" );
1806
+ /* ALTER MATERIALIZED VIEW xxx RENAME */
1807
+ else if (Matches ("ALTER" , "MATERIALIZED" , "VIEW" , MatchAny , "RENAME" ))
1808
+ COMPLETE_WITH_ATTR (prev2_wd , " UNION SELECT 'COLUMN' UNION SELECT 'TO'" );
1809
+ else if (Matches ("ALTER" , "MATERIALIZED" , "VIEW" , MatchAny , "ALTER|RENAME" , "COLUMN" ))
1810
+ COMPLETE_WITH_ATTR (prev3_wd , "" );
1811
+ /* ALTER MATERIALIZED VIEW xxx RENAME yyy */
1812
+ else if (Matches ("ALTER" , "MATERIALIZED" , "VIEW" , MatchAny , "RENAME" , MatchAnyExcept ("TO" )))
1813
+ COMPLETE_WITH ("TO" );
1814
+ /* ALTER MATERIALIZED VIEW xxx RENAME COLUMN yyy */
1815
+ else if (Matches ("ALTER" , "MATERIALIZED" , "VIEW" , MatchAny , "RENAME" , "COLUMN" , MatchAnyExcept ("TO" )))
1816
+ COMPLETE_WITH ("TO" );
1817
+ /* ALTER MATERIALIZED VIEW xxx SET */
1818
+ else if (Matches ("ALTER" , "MATERIALIZED" , "VIEW" , MatchAny , "SET" ))
1819
+ COMPLETE_WITH ("(" , "SCHEMA" , "TABLESPACE" , "WITHOUT CLUSTER" );
1807
1820
/* ALTER POLICY <name> */
1808
1821
else if (Matches ("ALTER" , "POLICY" ))
1809
1822
COMPLETE_WITH_QUERY (Query_for_list_of_policies );
0 commit comments