2014-07-04 4:21 GMT-03:00 Flavio Henrique Araque Gurgel <[email protected]>:
> A última vez que fiz um particionamento brabo envolvendo datas na chave de > particionamento foi com a versão 8.3. > Se eu usasse between, o planejador não excluía as partições indesejadas e, > por isso, eu usava sempre os comparadores mais simples. > > Acredito que a coisa mudou a partir da versão 8.4 quando foi inserido o > modo partition para a GUC constraint_exclusion mas não estou com tempo pra > olhar o fonte e pesquisar agora, todavia, nas versões mais recentes, > Matheus já nos deu a prosa ;) > > []s > Flavio Gurgel > Só complementando, quando criei o check com between o parser o modificou para >= e <= , ou seja acabou ficando da forma como você disse Flávio. Mas foi bem interessante olhar o código do Postgres, ainda não tinha visto. Matheus, é desse trecho que você fala né? | a_expr BETWEEN opt_asymmetric b_expr AND b_expr %prec BETWEEN 11055 <http://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/parser/gram.y;h=ba7d091dc793c079481a9a0fab05a110c8e98ce7;hb=HEAD#l11055> { 11056 <http://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/parser/gram.y;h=ba7d091dc793c079481a9a0fab05a110c8e98ce7;hb=HEAD#l11056> $$ = makeAndExpr( 11057 <http://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/parser/gram.y;h=ba7d091dc793c079481a9a0fab05a110c8e98ce7;hb=HEAD#l11057> (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", $1, $4, @2), 11058 <http://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/parser/gram.y;h=ba7d091dc793c079481a9a0fab05a110c8e98ce7;hb=HEAD#l11058> (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", $1, $6, @2), 11059 <http://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/parser/gram.y;h=ba7d091dc793c079481a9a0fab05a110c8e98ce7;hb=HEAD#l11059> @2); 11060 <http://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/parser/gram.y;h=ba7d091dc793c079481a9a0fab05a110c8e98ce7;hb=HEAD#l11060> } Bruno E. A. Silva.
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
