<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Forum PostgreSQL]]></title>
		<link>https://forum.postgresql.org.pl/index.php</link>
		<description><![CDATA[Najświeże tematy w Forum PostgreSQL.]]></description>
		<lastBuildDate>Thu, 06 Oct 2016 13:05:48 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[bezpieczne tabletki na odchudzanie]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=14335&amp;action=new</link>
			<description><![CDATA[Siemka, co porabiacie? Kilka słów na mój temat - 24 lata, aktualne miejsce zamieszkania to Bydgoszcz, studiuję zaocznie, oprócz tego jestem trenerką personalną. Wychodzę z założenia, że należy wyglądać oraz czuć się zdrowo, przecież człowiek powinien potrafić dbać o samego siebie. Imię - Katarzyna, zainteresowania - siłownia oraz sport, lecz również kocham jeździć rowerem, zwiedzać interesujące miejscowości, oprócz tego przepadam za spaniem. :) Odwiedź moja stronę: [url=http://getronics.pl/zosinkowy]trizer opinie - zosinkowy[/url]]]></description>
			<author><![CDATA[dummy@example.com (ebocoj)]]></author>
			<pubDate>Thu, 06 Oct 2016 13:05:48 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=14335&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Zmiana słów w tekscie które pochodzą z innej tabeli]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1867&amp;action=new</link>
			<description><![CDATA[Cześć, 

Mam tabelke LEKI która zawiera ok 200000 rekordów - nazwy leków np. 

1. ELOCOM
2. CHICCO-BIB.PIC.DOSI-TERMORESIT
3. UVB/SUP (SELECTIVE ULTRAVIOLET PHOTOTHERAPY) – NASWIETLENIE ULTRAFIOLETEM B


Po napisaniu przez użytkownika posta chciałbym zamienić wyrazy w tym poście, które występują w tabeli LEKI na linki. Czyli np. 

"Używam lek Elocom i bardzo mi pomaga. Wcześniej używałem UVB/SUP (SELECTIVE ULTRAVIOLET PHOTOTHERAPY) – NASWIETLENIE ULTRAFIOLETEM B i jest do bani"

Wynikiem powinno być:

"Używam lek **link**Elocom**link** i bardzo mi pomaga. Wcześniej używałem **link**UVB/SUP (SELECTIVE ULTRAVIOLET PHOTOTHERAPY) – NASWIETLENIE ULTRAFIOLETEM B**link** i jest do bani"

Istnieje jakieś szybkie (wydajnościowo) rozwiązanie tego problemu?]]></description>
			<author><![CDATA[dummy@example.com (dzejdzej)]]></author>
			<pubDate>Mon, 15 Jul 2013 16:58:12 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1867&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Partycje na regułach i zwracana wartość po insert]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1864&amp;action=new</link>
			<description><![CDATA[Więc jest sobie tabela nadrzędna z pozycjami dokumentów np:
CREATE TABLE magazyn_inout_pos_parent
(
  doc_id character varying(25) NOT NULL, -- Referencja do dokumentu
  doc_pos integer NOT NULL,
  quantity numeric(12,2) NOT NULL,
  product_id integer NOT NULL,
  unit_price numeric(12,2) NOT NULL, -- cena za 1 unit
  mc_id character varying(12) NOT NULL, -- referencja do otwartego miesiąca
  CONSTRAINT magazyn_inout_pos_parent_pkey PRIMARY KEY (doc_id, doc_pos)
)
i tabela z miesiącami  :
CREATE TABLE miesiace_mag
(
  id character varying(12) NOT NULL,
  miesiac integer,
  rok integer,
  mag_id integer NOT NULL, -- FK do magazynu
  data date NOT NULL DEFAULT now(), -- Data która przez trigger zostanie podzielona na miesiąc i rok
  CONSTRAINT "PK_miesiace" PRIMARY KEY (id),
  CONSTRAINT "FK_miesiace_mag_id" FOREIGN KEY (mag_id)
      REFERENCES magazyny (id) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION
)
Na której wyzwalany jest trigger tworzący partycje
CREATE TRIGGER utworz_partycje
  AFTER INSERT OR UPDATE OR DELETE
  ON miesiace_mag
  FOR EACH ROW
  EXECUTE PROCEDURE magmc_modyfikator();
Procedura magmc w zależności czy insert, update czy delete coś tam robi ale w każdym razie podczas insert wywołuje :

CREATE OR REPLACE FUNCTION create_mag_pos(mcid character varying, magnr integer)
  RETURNS boolean AS
$BODY$DECLARE 
	tname text:='magazyny.magazyn_inout_' || magnr;
	suffix text:='_doc';
	pname text:='magazyny.magazyn_inout_pos_' || mcid;
BEGIN
	EXECUTE 'CREATE TABLE ' || pname || ' (CHECK (mc_id=''' || mcid || ''')) INHERITS (magazyn_inout_pos_parent);';
	EXECUTE 'CREATE RULE magazyn_inout_pos_' || mcid || '_insert_rule AS ON INSERT to magazyn_inout_pos_parent WHERE (mc_id=''' || mcid || ''' ) DO INSTEAD INSERT INTO ' || pname || ' VALUES (NEW.*);';

	EXECUTE 'ALTER TABLE '||pname||' ADD CONSTRAINT "PK_'||pname||'" PRIMARY KEY ("doc_id", "doc_pos");';
	EXECUTE 'ALTER TABLE '|| pname ||' ADD CONSTRAINT "FK_'||pname||'_docid" FOREIGN KEY (doc_id) REFERENCES '||tname||' (id) ON UPDATE NO ACTION ON DELETE NO ACTION;';
	EXECUTE 'ALTER TABLE '|| pname ||' ADD CONSTRAINT "FK_'||pname||'_mcid" FOREIGN KEY (mc_id) REFERENCES miesiace_mag (id) ON UPDATE NO ACTION ON DELETE NO ACTION;';
	EXECUTE 'ALTER TABLE '|| pname ||' ADD CONSTRAINT "FK_'||pname||'_prodid" FOREIGN KEY (product_id) REFERENCES products (id) ON UPDATE NO ACTION ON DELETE NO ACTION;';

	RETURN TRUE;
END;

W tym wszystkim chodzi o to, żeby partycje i reguły były tworzone automatycznie podczas modyfikacji tabel i to działa. Problem pojawia się natomiast podczas wpisywania danych do tabeli kiedy potrzebuję zwrócić klucz łączony (doc_id, doc_pos);
Niestety INSERTY tworzone w regułach z clauzurą WHERE pozbawione są możliwości zwracania wartości w posgresql-u.
Klucz ten jest też tworzony wg. dość skomplikowanych funkcji i raczej nie interesuje mnie jego zamiana na sekwencje a następnie wybieranie tej wartości funkcjami curentval itp.
Czy istnieje jakiś elegancki sposób tworzenia partycji i pracy na zwracanych po insert wartościach.
Dajcie znać proszę jeśli macie na to jakiś sprytny sposób.]]></description>
			<author><![CDATA[dummy@example.com (risc)]]></author>
			<pubDate>Fri, 05 Jul 2013 10:36:07 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1864&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Jak pominąć błąd "duplicate key value violates unique constraint"?]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1863&amp;action=new</link>
			<description><![CDATA[Hej

Jestem lalikiem jeżeli chodzi IT. Chciałem to zaznaczyć już na początku ;)

Musze wykonać w bazie PostgreSQL'a to:

[code]
UPDATE tourney_hand_player_combinations SET id_player = 19580 WHERE id_player != 19580 AND id_player != 1 AND id_player != 0 AND id_player != -1;
[/code]

Ale pojawia się ten błąd:

[code]
ERROR: duplicate key value violates unique constraint "tourney_hand_player_combinations_primary_key"
[/code]

Da się jakoś zmusić bazę, aby wykonała skrypt pomimo błędu? Nie chodzi o znalezienie przyczyny błędu i go wyeliminowanie, ale sprawienie, aby skrypt się wykonał pomimo niego.

Kwestia stabilności takiej bazy i nie jest istotna.

Dzięki!]]></description>
			<author><![CDATA[dummy@example.com (fryzurka)]]></author>
			<pubDate>Fri, 28 Jun 2013 16:51:08 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1863&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Zliczanie rekordów w kolumnie w zależności od daty.]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1424&amp;action=new</link>
			<description><![CDATA[Witam, kolejny problem:
Mam tabelę :

[code]
 id |    data
----+------------
 1  | 01-03-2012
 2  | 12-03-2012
 3  | 15-03-2011
 4  | 26-03-2012
 5  | 03-03-2011
[/code]

Jak powinna wyglądać kwerenda, która w wyniku dałaby:

[code]
 Pozycje 2011 | Pozycje 2012
--------------+--------------
 2            | 3
[/code]]]></description>
			<author><![CDATA[dummy@example.com (c_michal)]]></author>
			<pubDate>Fri, 30 Nov 2012 21:51:31 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1424&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[COUNT i GROUP BY daje puste pola]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1393&amp;action=new</link>
			<description><![CDATA[Witam, mam problem który wygląda następująco: Mam zapytanie w postaci:

[code]
SELECT 
  CASE 
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'kuj.-pom%' THEN 'kujawsko - pomorskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'war.-maz%' THEN 'warmińsko - mazurskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'podlaskie%' THEN 'podlaskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'pomorskie%' THEN 'pomorskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'dolnośląskie%' THEN 'dolnośląskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'lubelskie%' THEN 'lubelskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'wielkopolskie%' THEN 'wielkopolskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'mazowieckie%' THEN 'mazowieckie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'opolskie%' THEN 'opolskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'śląskie%' THEN 'śląskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'łódzkie%' THEN 'łódzkie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'świętokrzyskie%' THEN 'świętokrzyskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'zach.-pom%' THEN 'zachodnio - pomorskie'
    WHEN jednostki_organizacyjne.nazwa_skrocona LIKE 'malopolskie%' THEN 'małopolskie'
    ELSE jednostki_organizacyjne.nazwa_skrocona 
  END, 
  COUNT (jednostki_organizacyjne.nazwa_skrocona LIKE '%_dz') AS Dzieci,
  COUNT (jednostki_organizacyjne.nazwa_skrocona LIKE '%_d') AS Dorosli
FROM 
  public.pacjenci, 
  public.przyjecia, 
  public.jednostki_organizacyjne
WHERE 
  przyjecia.id_jednostki_organizacyjnej = jednostki_organizacyjne.id AND
  przyjecia.id_pacjenta = pacjenci.id
  AND jednostki_organizacyjne.nazwa_skrocona LIKE '%ZDLR%'
GROUP BY jednostki_organizacyjne.nazwa_skrocona
ORDER BY nazwa_skrocona

[/code]

które daje w wyniku:
[code]
    nazwa_skrocona     | dzieci | dorosli 
-----------------------+--------+---------
 dolnośląskie          |      9 |       9
 dolnośląskie          |     64 |      64
 kujawsko - pomorskie  |     13 |      13
 kujawsko - pomorskie  |     45 |      45
 lubelskie             |     33 |      33
 lubelskie             |      5 |       5
 łódzkie               |     30 |      30
 łódzkie               |      4 |       4
 małopolskie           |      3 |       3
 małopolskie           |     59 |      59
 mazowieckie           |     57 |      57
 mazowieckie           |     14 |      14
 opolskie              |      8 |       8
 opolskie              |      6 |       6
 podlaskie             |      5 |       5
 śląskie               |     11 |      11
 śląskie               |      2 |       2
 świętokrzyskie        |     19 |      19
 warmińsko - mazurskie |     55 |      55
 warmińsko - mazurskie |      9 |       9
 wielkopolskie         |      4 |       4
 wielkopolskie         |     21 |      21
 zachodnio - pomorskie |      1 |       1
 zachodnio - pomorskie |     16 |      16
(24 rows)

[/code]
Problem polega na tym, że zlicza mi wszystkie występienia a nie te, o które mi chodzi (czyli gdzie w "nazwa_skrocona" na końcu występuje '_dz' lub '_d'.
Jak powinno wyglądać prawidłowe zapytanie?]]></description>
			<author><![CDATA[dummy@example.com (lasoty)]]></author>
			<pubDate>Fri, 21 Sep 2012 22:20:00 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1393&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[zapytanie sqlowe z dwóch tabel]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1365&amp;action=new</link>
			<description><![CDATA[Witam,

Potrzebuje Waszej pomocy. Mam dwie tabele
mieszkaniec z kolumnami
id,imie,nazwisko, pesel, adres

 i samochod
id,typ,model,mieszkaniec_id

Musze napisać zapytanei liczące, ilu jest miszkańców którzy mają2 samochody, 3 samochody i 4 samochody.
czy macie pomysł jak to rozpisać?]]></description>
			<author><![CDATA[dummy@example.com (c_michal)]]></author>
			<pubDate>Tue, 24 Jul 2012 17:23:53 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1365&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[MySQL to PostgreSQL]]></title>
			<link>https://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>https://forum.postgresql.org.pl/viewtopic.php?id=1331&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Funkcja i transakcje]]></title>
			<link>https://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>https://forum.postgresql.org.pl/viewtopic.php?id=1324&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[zapytanie o wylistowanie błędów w tabeli]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1280&amp;action=new</link>
			<description><![CDATA[Mam tabele adres, gdzie mam kolumny
1.Data
1.Miasto
2.Gmina
3.wojewodztwo

musze poprawić błędy, których nie wiem ile jest tzn
np 5 razy Malbork mam wprowadzony na pomorskie ,a raz w mazowieckim

kombinowałem żeby to wylistować, aby sprawdzic ilości błędów,ale coś nie wychodzi.

Błędy są tylko w województwach, przez co userzy zgłaszają problemy w statystykach.

Czy wiecie jak napisać zapytanie select?

kombinowałem
select * from adres where wojewodztwo<>wojewodztwo and miasto=miasto and gmina=gmina

to nic nie pokazuje....]]></description>
			<author><![CDATA[dummy@example.com (c_michal)]]></author>
			<pubDate>Wed, 14 Mar 2012 21:26:13 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1280&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[sum(pole) dla 22 różnych id]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1175&amp;action=new</link>
			<description><![CDATA[Witam,

mam 2 tabele

----tab1
id_tab1
pole
id_tab2 - z tab2

oraz
---tab2
id_tab2
jakas_nazwa

mam id_tab2 od 1-22 i potrzebuję obliczyć sum(pole) z tab1 biorąc pod uwagę, że id_tab2=1 i id_tab2=2 ... aż do id_tab2=22

1. czy można to zrobić jednym zapytaniem czy trzeba aż 22 zapytania?
2. czy można by było po wykonaniu p1 dołączyć do wyniku sum nazwę pola z tab2 pt jakas_nazwa - podejrzewam, że tutaj bez crosstab się nie obejdzie.

pozdrawiam.]]></description>
			<author><![CDATA[dummy@example.com (przesq)]]></author>
			<pubDate>Mon, 05 Mar 2012 07:50:24 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1175&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Zapytanie dynamiczne]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1241&amp;action=new</link>
			<description><![CDATA[Potrzebuję pomocy przy zapytaniu które wykonuję się dynamicznie, czyli jest budowane wew procedury ze względu na warunki
czyli coś takiego w uproszczeniu 

zmiena_string_1 varchar (10);
 zmiena_string_2 varchar (10);
 zmiena_string_3 varchar (10);
 zmiena_string_4 varchar (10);
 zmiena_string_5 varchar (10);
 zmiena_string_suma varchar (10);
 
 
 zmiena_string_1:= 'select'
 zmiena_string_2:= 'pole'
 zmiena_string_3:= 'from'
 zmiena_string_4:= 'tabela'
 zmiena_string_5 := ' '
 
 
 zmiena_string_suma := zmiena_string_1 + zmiena_string_5
  + zmiena_string_2 + zmiena_string_5 + zmiena_string_3 + zmiena_string_5
  + zmiena_string_3
  
 /* lub coś takiego: */ 
  
  zmiena_string_suma := ''zmiena_string_1' + + 'zmiena_string_5''....
  
  
  /*co daj nam zmiena_string_suma := select [pole] from [tabela]*/
  
 /* Teraz chce wywołać zmiena_string_suma aby zrobiło się zapytanie.
  
  W MS SQL możn było zrobić tak i póżniej wywołać exec (zmiena_string_suma) 
  i wewnątrz prcedury wykonywało się tak zbudowane zapytanie */]]></description>
			<author><![CDATA[dummy@example.com (rski)]]></author>
			<pubDate>Sun, 26 Feb 2012 18:13:07 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1241&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Cursor loop]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1211&amp;action=new</link>
			<description><![CDATA[Witam,

mam pytanie na temat kursorów w postgres. Mam tabelę z numerami pesel i chce na podstawie peselu wybrać dane z innych tabel.

Aby nie robić mało wydajnej pętli chciałem na tabele gdzie są tylko numery pesel założyć kursor brać pierwszy pesel na postawie jego robić zapytanie do innych tabel, wykonać działania a następnie poprać kolejny pesel.


DECLARE pesel_nr VARCHAR (12)
DECLARE db_cursor CURSOR FOR 
SELECT pesel
from  [TABELA Z PESELAMI]
OPEN db_cursor  
FETCH NEXT FROM db_cursor INTO pesel_nr  -- tak to robiel w innym rozwiazaniu

WHILE @@FETCH_STATUS = 0  
BEGIN  


nazwiskoo :=       select nazwisko 
					from [Tabela z danymi]
                    where nr_pesel = pesel
       
       FETCH NEXT FROM db_cursor INTO pesel_nr  
END  

CLOSE db_cursor  
DEALLOCATE db_cursor


mółbym bez kursorów tylko sama pętla ale to będzie zdecydowanie wolniejsze]]></description>
			<author><![CDATA[dummy@example.com (Rafik83)]]></author>
			<pubDate>Tue, 21 Feb 2012 12:33:28 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1211&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[problem z zapytaniem, proszę o pomoc]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1219&amp;action=new</link>
			<description><![CDATA[Witajcie, proszę o pomoc, kombinuję nad tym od 5 godzin a rozwiązanie jest pewnie proste.
Mam tabelę [produkty_wlasciwosci]:

id_produktu| id_cechy
  3                 |    1         
  3                 |    2 
  3                 |    3 
  4                 |    1 
  4                 |    2 
  4                 |    4 
  5                 |    1 
  5                 |    6 
  5                 |    7

potrzebuję stworzyć zapytanie w którego wyniku dostanę zbiór [id_produktu] dla których wspólne [id_cechy] wynoszą 1 i 2

zbudowałem zapytanie:

SELECT id_produktu, id_cechy, kategoria FROM  produkty_wlasciwosci id_cechy = 1 OR id_cechy = 2 które oczywiście daje w wyniku również produkt numer 5. W jaki sposób zadać pytanie tak, by określając zbiór cech otrzymać w wyniku tylko te id_produktu (najlepiej w ilości 1 id_produktu z rodzaju) do których przynależą wszystkie te cechy.

Pozdrawiam, Marcin]]></description>
			<author><![CDATA[dummy@example.com (AsYlum)]]></author>
			<pubDate>Mon, 20 Feb 2012 10:27:50 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1219&amp;action=new</guid>
		</item>
		<item>
			<title><![CDATA[Dynamiczna zamiana wierszy na kolumny]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?id=1237&amp;action=new</link>
			<description><![CDATA[Witam!

Mam dwie tabele:

data_type
-------------
dt_id int,
dt_name string

data_value
--------------
dv_id int
dv_user_id int
dv_value int
dv_type_id int   (Referencja do data_type.dt_id)

W tabelach mam dane:

dt_id | dt_name
--------------------
  1    | Data_Type_1
  2    | Data_Type_2

dv_id | dv_user_id | dv_value | dv_type_id
------------------------------------------------------
    1   |          1       |       6        |       1
    2   |          1       |       7        |       2
    3   |          2       |       8        |       1
    4   |          2       |       9        |       2

A w wyniku zapytania chciałbym uzyskać tabelę:

dv_user_id | Data_Type_1 | Data_Type_1
-----------------------------------------------------
        1         |            6         |         7
        2         |            8         |         9


Dodatkowym utrudnieniem jest to, że wszystkie dane zmieniają się dynamicznie, także nie mogę napisać stałego zapytania.
Najlepiej gdyby udało się wyświetlać docelową tabelę w postaci widoku.

Jak ktoś ma jakiś pomysł to proszę o podzielenie się nim, gdyż ja dostałem totalnego zaciemnienia :/]]></description>
			<author><![CDATA[dummy@example.com (gszpetkowski)]]></author>
			<pubDate>Sat, 18 Feb 2012 14:39:56 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?id=1237&amp;action=new</guid>
		</item>
	</channel>
</rss>
