From 5254e30547ab8e1c10f5ff3379bf356c75c5a5ea Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Wed, 7 Jan 2009 22:54:45 +0000 Subject: [PATCH] Add comment about why BETWEEN uses operator strings and not opclasses, with URL pointing to email discussion. --- src/backend/parser/gram.y | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index 249083ee21..6d65777379 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -8361,6 +8361,11 @@ a_expr: c_expr { $$ = $1; } { $$ = (Node *) makeSimpleA_Expr(AEXPR_OF, "<>", $1, (Node *) $6, @2); } + /* + * Ideally we would not use hard-wired operators below but instead use + * opclasses. However, mixed data types and other issues make this + * difficult: http://archives.postgresql.org/pgsql-hackers/2008-08/msg01142.php + */ | a_expr BETWEEN opt_asymmetric b_expr AND b_expr %prec BETWEEN { $$ = (Node *) makeA_Expr(AEXPR_AND, NIL, -- 2.39.5