On Wed, Jul 03, 2019 at 12:27:09AM +1200, David Rowley wrote: > On Tue, 2 Jul 2019 at 21:00, Thomas Munro <thomas.mu...@gmail.com> wrote: > > The more I think about these UniqueKeys, the more I think they need to > be a separate concept to PathKeys. For example, UniqueKeys: { x, y } > should be equivalent to { y, x }, but with PathKeys, that's not the > case, since the order of each key matters. UniqueKeys equivalent > version of pathkeys_contained_in() would not care about the order of > individual keys, it would say things like, { a, b, c } is contained in > { b, a }, since if the path is unique on columns { b, a } then it must > also be unique on { a, b, c }.
Is that actually true, though? I can see unique {a, b, c} => unique {a, b}, but for example: a | b | c --|---|-- 1 | 2 | 3 1 | 2 | 4 1 | 2 | 5 is unique on {a, b, c} but not on {a, b}, at least as I understand the way "unique" is used here, which is 3 distinct {a, b, c}, but only one {a, b}. Or I could be missing something obvious, and in that case, please ignore. Best, David. -- David Fetter <david(at)fetter(dot)org> http://fetter.org/ Phone: +1 415 235 3778 Remember to vote! Consider donating to Postgres: http://www.postgresql.org/about/donate