Em sex., 23 de out. de 2020 às 10:35, PALAYRET Jacques <jacques.palayret@xxxxxxxx> escreveu:
>
> With PgLogical extension, I have tested the possibility of column filtering (columns) and row filtering (row_filter).
> But is there a way to do a conditional column filtering ?
> I mean a way to filter a column based on a predicate, with pglogical (so the filtered values won’t arrive on subscribers).
> For example, with a replicated table t(a integer as Primary Key, b numeric, c integer, d text), I would like to filter the column b when c between 10 and 20.
>
--
Fabrízio de Royes Mello Timbira - http://www.timbira.com.br/
PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
>
> With PgLogical extension, I have tested the possibility of column filtering (columns) and row filtering (row_filter).
> But is there a way to do a conditional column filtering ?
> I mean a way to filter a column based on a predicate, with pglogical (so the filtered values won’t arrive on subscribers).
> For example, with a replicated table t(a integer as Primary Key, b numeric, c integer, d text), I would like to filter the column b when c between 10 and 20.
>
Hello,
According to the documentation [1] the row_filter is a normal PostgreSQL _expression_ with the same limitations of CHECK constraints, so you can do something like: row_filter := 'c between 10 and 20 and b = ?'
Regards,
Fabrízio de Royes Mello Timbira - http://www.timbira.com.br/
PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento