diff --git a/src/bin/psql/tab-complete.c b/src/bin/psql/tab-complete.c index d113adff03..00df2c6197 100644 --- a/src/bin/psql/tab-complete.c +++ b/src/bin/psql/tab-complete.c @@ -2842,7 +2842,10 @@ psql_completion(char *text, int start, int end) COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_tables, NULL); /* WITH [RECURSIVE] */ - else if (pg_strcasecmp(prev_wd, "WITH") == 0) + /* Only match when WITH is the first word, as WITH may appear in many other + contexts. */ + else if (pg_strcasecmp(prev_wd, "WITH") == 0 && + prev2_wd[0] == '\0') COMPLETE_WITH_CONST("RECURSIVE"); /* ANALYZE */