From: | Alban Hertroys <haramrae(at)gmail(dot)com> |
---|---|
To: | Thomas Kellerer <shammat(at)gmx(dot)net> |
Cc: | pgsql-general(at)lists(dot)postgresql(dot)org |
Subject: | Re: index unique |
Date: | 2021-06-10 20:32:58 |
Message-ID: | 5D617659-7B20-468C-9C40-51BFDD7D5767@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
> On 8 Jun 2021, at 22:50, Thomas Kellerer <shammat(at)gmx(dot)net> wrote:
>
> Marc Millas schrieb am 03.06.2021 um 22:51:
>> on a table we need a primary key and to get a unique combinaison, we need 3 columns of that table:
>> 1 of type integer,
>> 1 of type text,
>> 1 of type geometry
>>
>
> How do you define the "uniqueness" of the geometry?
That is actually the big question here. Multiple “unique” geometries can specify the same geometry!
A geom as simple as a line from (0,0) - (1,0) can just as easily be specified as (1,0) - (0,0). That’s the simplest case, and one could argue that the point of origin is different, but the next example would be a triangle starting at the same origin but traversed in different directions. It gets harder the more vertices a polygon has.
I would argue that a geometry type is ill-suited as a primary key column candidate.
Now, of course, the OP could have a case where their geometries are guaranteed to be unique regardless, but they’d better make sure before adding them to the PK.
Alban Hertroys
--
If you can't see the forest for the trees,
cut the trees and you'll find there is no forest.
From | Date | Subject | |
---|---|---|---|
Next Message | Jan Wieck | 2021-06-10 20:35:57 | Re: bottom / top posting |
Previous Message | Peter J. Holzer | 2021-06-10 20:25:39 | Re: bottom / top posting |