<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Forum PostgreSQL]]></title>
		<link>http://forum.postgresql.org.pl/index.php</link>
		<description><![CDATA[Najświeże tematy w Forum PostgreSQL.]]></description>
		<lastBuildDate>Fri, 18 May 2012 14:24:32 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[pgAgent nie realizuje zadań]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1340&amp;action=new</link>
			<description><![CDATA[Witam wszystkich 

Używając instrukcji ze strony:
[url]http://www.pgadmin.org/docs/1.4/pgagent.html[/url]

Włączyłem sobie pgAgenta dodałem mu nowe zadanie, zdefiniowałem plan i kroki. Teorytycznie wszystko powinno działać a niestety zadanie się nie realizuje. 
Początkowo po wykonaniu w linii komend:
pgAgent INSTALL pgAgent -u postgres -p secret hostaddr=127.0.0.1 dbname=pgadmin user=postgres

usługa się niby utworzyła ale nie dało rady jej uruchomić dopiero gdy w ustawieniach usługi zmieniłem konto logowania na lokalne konto systemowe usługa się uruchomiła. Przypuszczam, że to jest problem jednak tu mam pytanie czy w powyższej lini komend powinienm podać jako dbname nazwę pgadmin czy nazwę mojej bazy danych na której ma być zadanie uruchamiane i jako user wpisać użytkownika bazy danych czy użytkownika systemowego postgres?]]></description>
			<author><![CDATA[dummy@example.com (woolfik)]]></author>
			<pubDate>Fri, 18 May 2012 14:24:32 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1340&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Wyświetlenie części zawartości pola]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1339&amp;action=new</link>
			<description><![CDATA[Witam ponownie. Mam pole, którego zawartość przedstawia się mniej więcej tak:

[code]
+-----------+
|  POLE     |
+-----------+
|2011/000002|
+-----------+
[/code]

Jak wyświetlić wszystkie wiersze tego pola, ale tylko "2011" (w założeniu tylko 4 pierwsze litery)?]]></description>
			<author><![CDATA[dummy@example.com (c_michal)]]></author>
			<pubDate>Thu, 17 May 2012 20:16:53 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1339&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Pobieranie z jednego pola]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1338&amp;action=new</link>
			<description><![CDATA[Witam, mam dwie tabele:

[code]
+-----------+
|  tabela   |
+-----------+
|  ID       |
+-----------+
| dane_1    |
+-----------+
| dane_2    |
+-----------+

-----------------------------
+-----------+
|  slownik  |
+-----------+
|  ID       |
+-----------+
| KOD       |
+-----------+
| opis      |
+-----------+
[/code]

Problem polega na tym, że pola dane_1 oraz dane_2 odnoszą się do pola slownik.ID. Jak powinno wyglądać zapytanie aby poprawnie wyświetlić wartość pola slownik.KOD do którego odnoszą się wspomniane pola?]]></description>
			<author><![CDATA[dummy@example.com (lasoty)]]></author>
			<pubDate>Thu, 17 May 2012 13:18:01 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1338&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Grupowanie różnych danych w powtarzajacych się wierszach]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1336&amp;action=new</link>
			<description><![CDATA[Witam, to jest mój pierwszy, ale na pewno nie ostatni post na tym forum. Mam pewien problem i nie wiem do końca jak sobie z nim poradzić, otóż mam takie zapytanie:

[code]
SELECT 
  pacjenci.nr_ksiegi_glownej AS "Nr księgi głównej", 
  pacjenci.pesel, 
  pacjenci.data_urodzenia, 
  pacjenci.nazwisko, 
  pacjenci.imie, 
  icd10.kod
  FROM 
  public.pacjenci, 
  public.icd10, 
  public.przyjecia, 
  diagnozy
WHERE 
  przyjecia.id_pacjenta = pacjenci.id AND
  diagnozy.id_przyjecia = przyjecia.id AND
  diagnozy.id_icd10 = icd10.id
order by pacjenci.nr_ksiegi_glownej;
[/code]

którego wynik prezentuje się w następujący sposób:

[code]
Nr księgi głównej |    pesel    | data_urodzenia |          nazwisko          |         imie         |  kod  
-------------------+-------------+----------------+----------------------------+----------------------+-------
 2011/000013       | *********** | 1945-07-16     | Ł*******                   | Longina              | D37.4
 2011/000013       |  *********** | 1945-07-16     | Ł*******                   | Longina              | E11
 2011/000013       |  *********** | 1945-07-16     | Ł*******                   | Longina              | F32.3
 2011/000013       |  *********** | 1945-07-16     | Ł*******                   | Longina              | J45
 2011/000013       |  *********** | 1945-07-16     | Ł*******                   | Longina              | I10

[/code]


Jak widać dane we wszystkich kolumnach poza jedną są identyczne, chciałbym uzyskać coś takiego:


[code]
Nr księgi głównej |    pesel    | data_urodzenia |          nazwisko          |         imie         |  kod  
-------------------+-------------+----------------+----------------------------+----------------------+-------
2011/000013       | ********** | 1945-07-16     | Ł*******                  | Longina              | D37.4,  E11, F32.3, F32.3, J45, I10
[/code]

Będę wdzięczny za pomoc.]]></description>
			<author><![CDATA[dummy@example.com (lasoty)]]></author>
			<pubDate>Thu, 17 May 2012 13:13:41 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1336&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[openlayers + postgis - wyznaczanie trasy]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1337&amp;action=new</link>
			<description><![CDATA[Witam,

Mam problem z wyznaczaniem najkrótszej trasy, a mianowicie...
mam tabele zawierająca między innymi kolumnę 'geometria' z linestringami.
Rysując jakąś drogę każdy z odcinków zapisywany w osobnym rekordzie.
Jest wiele dróg które między innymi się przecinają...
Pytanie moje jest takie...
mając sieć takich dróg chciałbym wyznaczyć najkrótszą drogę pomiędzy 2 punktami. Droga oczywiście miała by przebiegać przez odcinki z tabeli. W jaki sposób mógłbym to osiągnąć?

Pozdrawiam,
Michał]]></description>
			<author><![CDATA[dummy@example.com (MichalSz)]]></author>
			<pubDate>Tue, 15 May 2012 11:02:48 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1337&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[diagram gotowej bazy]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1329&amp;action=new</link>
			<description><![CDATA[Chcę się podłączyć do istniejącej bazy i móc generować dla nie diagramy, które mają możliwość edytowania tabel.
Chodzi mi o funkcjonalność diagramów mniej więcej taka jak w SQL Server Management Studio. Czy jest coś podobnego i darmowego dla Postgresa?]]></description>
			<author><![CDATA[dummy@example.com (lasoty)]]></author>
			<pubDate>Mon, 14 May 2012 12:18:27 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1329&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Funkcja blokująca wypożyczanie przy większej ilości wypożyczeń]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1335&amp;action=new</link>
			<description><![CDATA[Witam,

Mam do zrobienia zadanie ale nie za bardzo wiem jak się do tego zabrać, wiec prosze o pomoc użytkowników forum :)

Stwórz funkcje i wyzwalacz, która przy próbie wypożyczenia płyty nie pozwoli wypożyczyć nowej płyty użytkownikowi, który ma 5 lub więcej niezwróconych pozycji.

Dostepne są 3 bazy:
Uzytkownikow
Plyt
Kto_co_kiedy_wypozyczyl

Z góry dziękuje za odpowiedzi:)]]></description>
			<author><![CDATA[dummy@example.com (BigBlackDog)]]></author>
			<pubDate>Sat, 12 May 2012 06:50:17 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1335&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[uruchomienie PostgreSQL 9.1.3]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1333&amp;action=new</link>
			<description><![CDATA[Witam,

na początku chciałbym zaznaczyć, że jestem świeżo upieczonym użytkownikiem PostgreSQL 9.1.3.
zainstalowałem na swoim notebooku z Win7Pro x64 postgresql-9.1.3-1-windows-x64
instalacja przebiegła bez problemów.
po uruchomieniu pgAdmin i próbie połączenia z serwerem:
1. wyskakuje mi okienko "Połącz z serwerem" z prośbą o wpisanie hasła (wpisuje hasło, które stworzyłem podczas instalacji),
2. następnie pojawia się komunikat Guru :) 
"Saving passwords
WARNING: You have opted to save your password. It will be stored in plain text in your home directory on *nix systems, or in your user profile on Windows. If you do not want this to happen, please press the Cancel button. 
pgAdmin uses PostgreSQL's 'pgpass' mechanism to store your passwords. On *nix systems, the password will be stored in ~/.pgpass, whilst on Windows systems it will be stored in %APPDATA%\PostgreSQL\pgpass.conf (%APPDATA% is the 'Application Data' folder in your user profile). This mechanism is used by default by all programs that use the libpq library to access the server, which includes command line applications such as pg_dump and pg_restore, other GUI applications, and drivers such as psqlODBC. This means that those applications may automatically connect to the server using your stored password. If you do not want this to happen, you should not use the Store Password option in pgAdmin. "
3. klikam ok i pojawia mi się:
Wystąpił błąd
Error connecting to the server: KATASTROFALNY: autoryzacja hasłem nie powidła się dla użytkowaniak "nazwa_użytkownika".

dodam, że odszukałem tego użytkownika przez usługi w windzie i zmieniłem mu hasło. powtórzyłem wszystko jeszcze raz i efekt był taki sam.

proszę o wyrozumiałość i pomoc w uruchomieni i skonfigurowaniu PostgreSa.]]></description>
			<author><![CDATA[dummy@example.com (coupler)]]></author>
			<pubDate>Wed, 09 May 2012 08:19:29 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1333&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Primary key, hibernate i postgre]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1332&amp;action=new</link>
			<description><![CDATA[Witam może ktoś tutaj udzieli mi odpowiedzi. Bo na innym forum nie dali rady. Chodzi o to, że mam 3 klasy za pomocą których tworzę tabelki i dane do bazy wprowadzam za pomocą takiego okna [url]http://www.fotosik.pl/pokaz_obrazek/pelny/3b54d5384bffc88f.html[/url] i w zależności co wybierze użytkownik to do takiej tabelki trafi podana nazwa i problem polega na tym, że jak wprowadzę rodzaj chwile potem producenta a następnie kategorię to id przy pierwszym wpisie w tabelkach wygląda tak:

rodzaj -> id=1
producent -> id=2
kategoria -> id=3

a przecież wszędzie id powinno być równe 1 bo to przecież pierwsze wpisy w tabelach. Mam nadzieję, że dobrze naświetliłem problem. Proszę o rady i sugestie.]]></description>
			<author><![CDATA[dummy@example.com (AsYlum)]]></author>
			<pubDate>Tue, 08 May 2012 05:27:34 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1332&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[MySQL to PostgreSQL]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1331&amp;action=new</link>
			<description><![CDATA[Hej,

uczę się dopiero postgresa i potrzebuję tych zapytań z mysql w postgresie wykonać, widzę że są różnice i to wcale nie małe, mógłby mi ktoś pomóc przerobić dla postgresa ? 

create database x character set utf8 collate utf8_polish_ci;

GRANT ALL PRIVILEGES ON item_directory.* TO item@localhost IDENTIFIED BY 'item';
GRANT ALL PRIVILEGES ON item_directory.* TO item@"%" IDENTIFIED BY 'item';

flush privileges;



create table users (
	id bigint(20) not null auto_increment,
	login varchar(255) not null,
	password varchar(255) not null,
	
	PRIMARY KEY (id),
	UNIQUE KEY unique_users_login (login)

);


create table locations (
	id bigint(20) not null auto_increment,
	name varchar(255) not null,
	
	PRIMARY KEY (id),
	UNIQUE KEY unique_name (name)
);


Z gory wielkie dzieki]]></description>
			<author><![CDATA[dummy@example.com (c_michal)]]></author>
			<pubDate>Mon, 07 May 2012 14:03:48 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1331&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[jak dodać miliard rekordów]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1326&amp;action=new</link>
			<description><![CDATA[Witam

W ramach relaksu robię sklep. Będzie w nim stosunkowo niewiele
towarów (na raz około 1500) ale bardzo duża rotacja. Rocznie około 
75000 towarów w róznych kategoriach. Do tego zakładam około
miliona tygodniowo zamówień po średnio 10 towarów. Dodatkowo
do całej bazy chyba musze mieć normalny dostęp bo będzie robione
dużo raportów - co tydzień trzeba będzie przekopać bazę na milion
sposobów i ustalić jakie towary warto dawać a jakie nie. 

Może to zła kolejność ale zacząłem od testowania baz danych. Postanowiłem
potworzyć kilka tabel z około 20 polami i odpowiednio 100 tys. (oferta), 100
milionami (zamówienia) i miliardem (pozycje zamówienia) rekordów. 

Próbuje to już zrobić na 20 różnych sposobów (prosty skrypt w php, aplikacje
w delphi, jakieś gotowe generatory danych testowych i różne inne metody)
i po wielu godzinach udało mi się ledwo kilkaset tysięcy rekordów dodać.
Postgress w wersji 8.1 (chyba). Maksymalna szybkość dodawania to 
dosłownie 30 rekordów na sekundę. Robię to zwykłym insertem. 

Jak mogę szybko wygenerować takie duże tabele ? 
Czy to jest w ogóle możliwe ?]]></description>
			<author><![CDATA[dummy@example.com (rski)]]></author>
			<pubDate>Fri, 20 Apr 2012 18:04:19 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1326&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Mały/Duży problem z FTS]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1327&amp;action=new</link>
			<description><![CDATA[Witam
Mój problem jest następujący:
Mam tabelę z produktami, dodany tsvector fts z 3 kolumn (wagi na każdą) według starej instrukcji depesz'a ...

Teraz na przykładzie :

sql=# select to_tsvector('Top Model /5851/ Animal Love Notes ze zwierzątkami');
                                        to_tsvector                                        
-------------------------------------------------------------------------------------------
 '/5851':3 'animal':4 'love':5 'model':2 'notes':6 'top':1 'topić':1 'ze':7 'zwierzątko':8
(1 wiersz)

Mam kłopot z tym '/5851':3
Jak zrobić tsvector aby nie było tego "/" przed 5851 ?

Baza 9.1]]></description>
			<author><![CDATA[dummy@example.com (mirvanos)]]></author>
			<pubDate>Wed, 18 Apr 2012 12:10:32 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1327&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Funkcja i transakcje]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1324&amp;action=new</link>
			<description><![CDATA[Witam,
mam pytanie mam funkcję która w kursorze wstawia dane do tabli i chce jak pojawi się błąd wycofać te inserty. Czyli

begin -- początek funkcji
   open kursor;

"tutaj są inserty do tabel"

   close kursor;

return (0);
exception


when others then
    raise notice 'Pojawił się inny błąd!';
    raise notice '% %', SQLERRM, SQLSTATE;

    return('Błąd!');
end;  -- koniec funkcji

Jak do takiej funkcji wstawić rollback?]]></description>
			<author><![CDATA[dummy@example.com (adamleon)]]></author>
			<pubDate>Thu, 05 Apr 2012 05:25:34 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1324&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[tabela przestawna - crosstab]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1208&amp;action=new</link>
			<description><![CDATA[Witam,

Potrzebuję zliczyć sumę m3 w postaci:

id_klasa_wym_kat_jak_wym | id_gat_drzew

biorąc pod uwagę, że:

wod.rok = 2012
wod.zatwierdzony = 'TAK'
wod_gat_drzew_dane.id_zablokowany = 2

id_gat_drzew - pochodzi z tabeli gat_drzew i zamiast id_gat_drzew powinna byc wartość gatunku drzewa - pole gat_drzew
id_klasa_wym_kat_jak_wym - pochodzi z tabeli klasa_wym_kat_jak_wym i zamiast id_klasa_wym_kat_jak_wym powinna byc wartość klasy, kategorii wymiarowej - pole klasa_wym_kat_jak_wym

Ostatecznie powinno to wyglądać mniej więcej tak:

           | so | jd | bk | gb | itd...
------------------------------------
WA0 I  | 3  | 2.3| 4  | 0  |
WB0 II | 4  | 0  | 0  | 0  |
M1       | 5  | 4.4| 2  | 0  |
S2a      | 6  | 0  | 2  | 1  |
itd...     | ... | ... | ... | ... | 

dane do testów:
[code]
DROP TABLE IF EXISTS sde.wod_gat_drzew_dane;
CREATE TABLE sde.wod_gat_drzew_dane (
  id_wod_gat_drzew_dane serial NOT NULL,
  id_wod_gat_drzew integer NOT NULL,
  m3 real NULL,
  id_klasa_wym_kat_jak_wym integer NOT NULL,
  id_zablokowany integer NOT NULL DEFAULT 2,
  CONSTRAINT wod_gat_drzew_dane_pkey PRIMARY KEY (id_wod_gat_drzew_dane)
)
WITH (OIDS=FALSE);
ALTER TABLE sde.wod_gat_drzew_dane OWNER TO mg;

GRANT SELECT, UPDATE, INSERT, REFERENCES, TRIGGER ON TABLE sde.wod_gat_drzew_dane TO mg;

insert into sde.wod_gat_drzew_dane values (1, 1, 2.17, 1, 2);
insert into sde.wod_gat_drzew_dane values (2, 1, 3.13, 1, 2);
insert into sde.wod_gat_drzew_dane values (3, 1, 1.81, 4, 2);
insert into sde.wod_gat_drzew_dane values (4, 2, 0.67, 5, 2);
insert into sde.wod_gat_drzew_dane values (5, 2, 0.41, 5, 2);
insert into sde.wod_gat_drzew_dane values (6, 2, 0.21, 8, 2);
insert into sde.wod_gat_drzew_dane values (7, 3, 1.11, 8, 2);
insert into sde.wod_gat_drzew_dane values (8, 3, 1.12, 1, 1);
insert into sde.wod_gat_drzew_dane values (9, 3, 2.34, 1, 1);
insert into sde.wod_gat_drzew_dane values (10, 4, 2.1, 1, 1);
insert into sde.wod_gat_drzew_dane values (11, 4, 3.1, 1, 2);
insert into sde.wod_gat_drzew_dane values (12, 4, 4.1, 11, 2);
insert into sde.wod_gat_drzew_dane values (13, 5, 5.1, 21, 2);
insert into sde.wod_gat_drzew_dane values (14, 5, 6.1, 21, 2);
insert into sde.wod_gat_drzew_dane values (15, 5, 7.1, 1, 2);
insert into sde.wod_gat_drzew_dane values (16, 6, 8.1, 17, 2);
insert into sde.wod_gat_drzew_dane values (17, 6, 9.1, 7, 2);
insert into sde.wod_gat_drzew_dane values (18, 6, 0.2, 7, 2);
insert into sde.wod_gat_drzew_dane values (19, 7, 0.4, 8, 2);
insert into sde.wod_gat_drzew_dane values (20, 7, 0.5, 8, 2);
insert into sde.wod_gat_drzew_dane values (21, 7, 0.8, 8, 2);
insert into sde.wod_gat_drzew_dane values (22, 7, 0.9, 1, 2);
insert into sde.wod_gat_drzew_dane values (23, 8, 2.1, 10, 2);
insert into sde.wod_gat_drzew_dane values (24, 8, 3.1, 15, 2);
insert into sde.wod_gat_drzew_dane values (25, 8, 4.1, 17, 2);
insert into sde.wod_gat_drzew_dane values (26, 9, 2.4, 13, 2);
insert into sde.wod_gat_drzew_dane values (27, 9, 2.2, 13, 2);
insert into sde.wod_gat_drzew_dane values (28, 9, 1.7, 13, 2);
insert into sde.wod_gat_drzew_dane values (29, 10, 2.8, 1, 2);
insert into sde.wod_gat_drzew_dane values (30, 10, 2.31, 6, 1);
insert into sde.wod_gat_drzew_dane values (31, 10, 1.9, 6, 2);

--#######################--

DROP TABLE IF EXISTS sde.wod_gat_drzew;
CREATE TABLE sde.wod_gat_drzew (
  id_wod_gat_drzew serial NOT NULL,
  id_wod integer NOT NULL,
  id_gat_drzew integer NOT NULL,
  CONSTRAINT wod_gat_drzew_pkey PRIMARY KEY (id_wod_gat_drzew)
)
WITH (OIDS=FALSE);
ALTER TABLE sde.wod_gat_drzew OWNER TO mg;

GRANT ALL ON TABLE sde.wod_gat_drzew TO mg;

insert into sde.wod_gat_drzew values (1, 1, 2);
insert into sde.wod_gat_drzew values (2, 1, 5);
insert into sde.wod_gat_drzew values (3, 1, 8);
insert into sde.wod_gat_drzew values (4, 2, 7);
insert into sde.wod_gat_drzew values (5, 2, 12);
insert into sde.wod_gat_drzew values (6, 3, 11);
insert into sde.wod_gat_drzew values (7, 3, 12);
insert into sde.wod_gat_drzew values (8, 4, 1);
insert into sde.wod_gat_drzew values (9, 4, 2);
insert into sde.wod_gat_drzew values (10, 4, 7);

--#######################--

DROP TABLE IF EXISTS wod;
CREATE TABLE wod (
  id_wod serial NOT NULL,
  id_obwod_ochr integer NOT NULL,
  rok integer NOT NULL,
  zatwierdzony character varying(3) DEFAULT 'NIE',
  CONSTRAINT wod_pkey PRIMARY KEY (id_wod)
)
WITH (OIDS=FALSE);
ALTER TABLE wod OWNER TO mg;

GRANT SELECT, UPDATE, INSERT, REFERENCES, TRIGGER ON TABLE wod TO mg;

insert into wod values (1, 2, 2012, 'TAK');
insert into wod values (2, 6, 2012, 'TAK');
insert into wod values (3, 12, 2012, 'NIE');
insert into wod values (4, 2, 2012, 'TAK');

--#######################--
[/code]]]></description>
			<author><![CDATA[dummy@example.com (arczif)]]></author>
			<pubDate>Mon, 02 Apr 2012 12:18:03 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1208&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Index częściowy na kluczu obcym]]></title>
			<link>http://forum.postgresql.org.pl/viewtopic.php?id=1322&amp;action=new</link>
			<description><![CDATA[Witam

Chciałbym Was zapytać o opinię stosowania indexu częściowego na kluczu obcym.
Mam tabele a i b.
Tabela a ma około 30mln rekordów, tabela b 5,5mln.
Klucz obcy na tabeli a do tabeli b wypełniony jest dla około miliona rekordów, dla pozostałych jest NULL. Czy są jakieś przeciwwskazania, żeby zastosować w tym przypadku index częściowy na tym kluczu obcym do tabeli b (where id_b IS NOT NULL) ?
Dodam, że index normalny na tym polu zajmuje 638MB a index częściowy 25MB.

Z góry dziękuję za odpowiedź.]]></description>
			<author><![CDATA[dummy@example.com (hubo)]]></author>
			<pubDate>Sun, 01 Apr 2012 15:13:42 +0000</pubDate>
			<guid>http://forum.postgresql.org.pl/viewtopic.php?id=1322&amp;action=new</guid>
		</item>
	</channel>
</rss>

