From 3eb1c8227751aecede58e742a13b07127a7e2652 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 7 Oct 1999 04:23:24 +0000 Subject: Fix planner and rewriter to follow SQL semantics for tables that are mentioned in FROM but not elsewhere in the query: such tables should be joined over anyway. Aside from being more standards-compliant, this allows removal of some very ugly hacks for COUNT(*) processing. Also, allow HAVING clause without aggregate functions, since SQL does. Clean up CREATE RULE statement-list syntax the same way Bruce just fixed the main stmtmulti production. CAUTION: addition of a field to RangeTblEntry nodes breaks stored rules; you will have to initdb if you have any rules. --- src/backend/commands/view.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/backend/commands/view.c') diff --git a/src/backend/commands/view.c b/src/backend/commands/view.c index a88b1840dd3..65c46d271a5 100644 --- a/src/backend/commands/view.c +++ b/src/backend/commands/view.c @@ -5,7 +5,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: view.c,v 1.38 1999/10/03 23:55:27 tgl Exp $ + * $Id: view.c,v 1.39 1999/10/07 04:23:00 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -225,9 +225,9 @@ UpdateRangeTableOfViewParse(char *viewName, Query *viewParse) * table... CURRENT first, then NEW.... */ rt_entry1 = addRangeTableEntry(NULL, (char *) viewName, "*CURRENT*", - FALSE, FALSE); + FALSE, FALSE, FALSE); rt_entry2 = addRangeTableEntry(NULL, (char *) viewName, "*NEW*", - FALSE, FALSE); + FALSE, FALSE, FALSE); new_rt = lcons(rt_entry2, old_rt); new_rt = lcons(rt_entry1, new_rt); -- cgit v1.2.3