Przemysław
S.
Geoinformacja,
INSPIRE, liczenie
bobrów, zawracanie
rzeki...
Temat: pytanie o widoki w postgresql (POSTGIS) i unikalny klucz
witammam taki mały problem:
posługuje się widokami aby zestawić ze sobą tabelę opisową z geometrią - obie kojarzone sa ze sobą poprzez pole GUID . Wszystko jest w porządku do czasu jak pojawi się rekord w tabeli opisowej z powielonym GUID (co czasem jest konieczne - np opisujac dwa razy ten sam punkt w czasie) dzieki temu w widoku w polu "gid" pojawiają sie dwie te same wartości i już np program QUANTUM GIS nie czyta tego widoku jako warstwy wektorowej, ponieważ nie potrafi znaleźć pola z unikatowym kluczem (do tej pory funkcję tego pola pełni "gid".
mój widok wygląda mniej wiecej tak (tabele gady_pft z geometrią i gadyobse z opisami):
CREATE OR REPLACE VIEW gatunki.gady_pft_obse AS
SELECT gady.gid, gady.gat, gady.the_geom, gady.nazwa_lac, gady.nazwa_pol, gady.uwagi_1, gady.uwagi_2, obs.lcz, obs.jdnlcz, obs.datobs, obs.guid_
FROM gatunki.gady_pft gady
FULL JOIN gatunki.gadyobse obs ON gady.guid_::text = obs.guid_::text;
jak widać "gid" służący w widoku jako pole klucza pobiera mi z tabeli w której gromadzona jest geometria (nie moge pobrac go z opisówki bo często nie mam opisów dla każdej geometrii)
problem rozwiązało by dodanie jakiegoś pola które mogło by zliczyć rekordy - próbowąłem coś z row_number(*) ale nie potrafie sobie z tym poradzić w moim widoku.
ma ktoś moze jakis pomysł - nie jestem specjalista z baz danych więc mój problem moze razić ale naprawdę nie wiem jak sobie z tym poradzić.
pozdrawiam przemek