<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Forum PostgreSQL - Problem z view]]></title>
		<link>https://forum.postgresql.org.pl/viewtopic.php?id=1216</link>
		<description><![CDATA[Najświeższe odpowiedzi w Problem z view.]]></description>
		<lastBuildDate>Wed, 14 Mar 2012 21:11:28 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Odp: Problem z view]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=3533#p3533</link>
			<description><![CDATA[To nie wina widoków po prostu musisz stosować do łączenia tabel klauzuli left join
dla 2 tabel powinno to wyglądać tak
select *
from sl_graf s
left join biblioteka_pic b on s.id=b.graf_key
To tylko przykład ilustrujący problem. Jesli tabela biblioteka_pic nie będzie miała rekordów to tabela sl_graf po lewej stronie jako chroniona zwróci rekordy.

Mam nadzieje że oto Ci chodziło]]></description>
			<author><![CDATA[dummy@example.com (c_michal)]]></author>
			<pubDate>Wed, 14 Mar 2012 21:11:28 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=3533#p3533</guid>
		</item>
		<item>
			<title><![CDATA[Problem z view]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=3411#p3411</link>
			<description><![CDATA[Dzień dobry

Mam mały problem z korzystaniem z "create view". utworzyłem widok poprzez zapytanie select łączące kilka tabel. Niestety jeżeli któreś pole w jednej z tabel jest puste (nie zawiera danych) utworzony widok nie zawiera danych. Jak to obejść, nie wszystkie pola są wymagane do wypełnienia. co zrobić aby widok gromadził dane a tam gdzie pole jest puste w widoku także było puste pole. 

____________
CREATE OR REPLACE VIEW widok_1 AS
select sl_kraj.nazwa as kraj, sl_kraina.nazwa as kraina, sl_wojew.nazwa as wojew, sl_powiat.nazwa as powiat, region.miejscowosc as miejscowosc, region.uroczysko as uroczysko, stanowisko.nazwa as nazwa_stanowiska, stanowisko.wspolrzedne as wspolrzedne, stanowisko.rzezba as opis_rzezby, stanowisko.npm as npm, stanowisko.npw as npw, stanowisko.komentarz as kom_stanowisko, stanowisko.data_odkr as data_odkr_stanowiska, sl_typ_stan.nazawa as typ_stanowiska, sl_przed_czas.nazwa as przedzial_czasowy, sl_odkrycie.nazwa as odkrycie_stanowiska, sl_graf.nazwa as zdjecia, sl_mapa.nazwa as mapa, bibliotek_pic.opis as opis_zdjecia
from
sl_kraj, sl_kraina, sl_wojew, sl_powiat, stanowisko, region, biblioteka_pic, sl_graf, sl_typ_stan, sl_przed_czas, sl_mapa, sl_odkrycie
where
sl_kraj.id=region.kraj_key and sl_kraj.id=sl_wojew.kraj_key and sl_kraj.id=sl_kraina.kraj_key and sl_wojew.id=region.wojew_key and sl_wojew.id=sl_powiat.wojew_key and sl_kraina.id=region.kraina_key and sl_powiat.id=region.powiat_key and region.id=stanowisko.region_key and stanowisko.id=biblioteka_pic.stanowisko_key and biblioteka_pic.graf_key=sl_graf.id and sl_typ_stan.id=stanowisko.typ_stan_key and sl_przed_czas.id=stanowisko.przed_czas_key and sl_mapa.id=stanowisko.mapa_key and sl_odkrycie.id=stanowisko.odkrycie_key;
_________________
jako uzupełnienie pytania dodam że chodzi o klucze obce. W tym przypadku tabela biblioteka_pic (łącząca) jest pusta. Łączy tabele stanowiska i sl_graf.]]></description>
			<author><![CDATA[dummy@example.com (lanczont)]]></author>
			<pubDate>Tue, 07 Feb 2012 20:52:44 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=3411#p3411</guid>
		</item>
	</channel>
</rss>
