neilc=# create table t1 (a int, b int);
neilc=# create unique index t1_a_idx on t1 ((a + b)) where (a > 5);
I just now realized that even though we allow the above. We do not allow:
pg=# create table t1 (a int, b int, unique(a+b));
nor the where clause syntax.
Any specific reason for this behaviour?
If we want to pass such kinds of expr, predicate based constraints via the
"LIKE .. INCLUDING CONSTRAINTS" statements, transformIndexConstraints as
well as the Constraint structure might need modifications.