Czy podczas tworzenia widoku w PostGIS można dodać unikalny identyfikator do tego widoku? Podobnie jak pole „gid” w dowolnej innej tabeli PostGIS?
Edycja: Przepraszam, że powinienem był zamieścić to w oryginalnym poście. Korzystam z PostGresql 9.0 i PostGIS 1.5.
Ando
postgis
postgresql
Ando
źródło
źródło
row_number() OVER() AS "id"
bezORDER
kolumnyrow_number
jest to w rzeczywistości losowa wartość. Nie można polegać na tym, że jest on spójny międzySELECT
s, szczególnie w przypadku zmiany danych bazowych.Dla starszych wersji PostgreSQL (<= 8,3), oto inne rozwiązanie. W tym przykładzie używam innej nazwy kolumny
vid
dla „view ID”.Najpierw utwórz sekwencję. Użyj,
CYCLE
aby zapętlał się, gdy dojdziesz do końca sekwencji.Teraz utwórz WIDOK wykorzystujący sekwencję:
źródło