<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Forum PostgreSQL - Relacje wiele do wielu- problem z zapytaniem]]></title>
		<link>https://forum.postgresql.org.pl/viewtopic.php?id=629</link>
		<description><![CDATA[Najświeższe odpowiedzi w Relacje wiele do wielu- problem z zapytaniem.]]></description>
		<lastBuildDate>Mon, 24 Oct 2011 07:41:52 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2775#p2775</link>
			<description><![CDATA[gszpetkowski dajesz mi bardzo duzo madrych i przdatnych rad za ktore dziekuje
Okazalo sie, ze mialem w jednym miejscu zamiast LAT i LNG wlasnie puste Stringi -"" nie widzialem tego wczesniej, pewnie w czasie wczesniejszych testow ( update zmian) musialo sie to zrobic przypadkowo.
Zastosuje sie do tego co napisales.
Pozdrawiam i dziękuję
Michał]]></description>
			<author><![CDATA[dummy@example.com (hetmanJIIIS)]]></author>
			<pubDate>Mon, 24 Oct 2011 07:41:52 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2775#p2775</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2774#p2774</link>
			<description><![CDATA[Dobrze, że podałeś DDL'a. Adaptując mój poprzedni przykład do tych tabel postać samej funkcji jest taka sama, reszta wygląda tak:

[code]Insert Into mapadodaj (nazwa, lat, lng) Values
    ('Zakopane', '49.3', '19.95'),
    ('Kielce', '50.883333', '20.616667');
Insert Into rejestracja ("login", haslo, lat, lng) Values
    ('Michal', '123', '50.0613892', '19.938333'), -- Kraków
    ('Bartek', '123', '52.406667', '16.923611'), -- Poznań
    ('Zenon', '123', '54.366667', '18.633333'); -- Gdańsk
Insert Into ulubione (obiekt, uzytkownik) Values
    (1, 'Michal'),
    (1, 'Bartek'),
    (2, 'Zenon'),
    (2, 'Michal');[/code]

W zapytaniu jest kilka drobnych zmian, ale generalnie wygląda tak samo:

[code]Select
    coordinateDistance(49.3, 19.95, lat::float, lng::float) As "Dystans [Km]",
    "login" AS "Użytkownik"
From rejestracja
Where
    "login" In (Select uzytkownik From ulubione Where obiekt = 1)
Order By "Dystans [Km]";[/code]

Wynik (identyczny jak w poprzednim przykładzie):

[code]   Dystans [Km]   | Użytkownik 
------------------+------------
   84.66677720873 | Michal
 405.461460646987 | Bartek
(2 rows)
[/code]

Wygląda więc na to, że problem leży w danych. Nota bene w tabeli ulubione możesz dodać klucze obce, żeby zachować więzy integralności. Co do tych pustych string'ów możesz to sprawdź np. przez:

[code]select id_user, "login", lat, lng from rejestracja where lat = '' or lng = '';[/code]

Jeśli to możliwe zmień design, trzymanie double precision (15 cyfr znaczących vide IEEE 754) jako text, to trochę jakby proszenie się o kłopoty. Możesz też założyć constaint na kolumny lng i lat, żeby pusty string nie był akceptowany (zauważ, że wartość specjalna NULL jest czymś totalnie różnym o pustego string'u, toteż samo ograniczenie NOT NULL nie wystarczy):

[code]ALTER TABLE rejestracja ADD CONSTRAINT lat_non_empty CHECK (lat <> '');
ALTER TABLE rejestracja ADD CONSTRAINT lng_non_empty CHECK (lng <> '');[/code]]]></description>
			<author><![CDATA[dummy@example.com (gszpetkowski)]]></author>
			<pubDate>Fri, 21 Oct 2011 21:57:16 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2774#p2774</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2773#p2773</link>
			<description><![CDATA[Wciaz powtarza sie to samo ehh moze wytlumacze bardzo dokladnie moje tabele bo juz niewiem gdzie moze siedziec blad

tabela mapaDodaj:
CREATE TABLE mapadodaj
(
  id_punkt serial NOT NULL,
  lat character varying(40),
  lng character varying(40),
  nazwa character varying(20) NOT NULL,
  grubosctrasa character varying(4),
  gruboscpozatrasa character varying(4),
  temperatura character varying(4),
  opis text,
  ikona character varying(100),
  uzytkownik character varying(20),
  datawpisu character varying(10),
  kamera text,
  CONSTRAINT mapadodaj_pkey PRIMARY KEY (id_punkt)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE mapadodaj OWNER TO postgres;



/*-----------------------------------------*/
TABELA REJESTRACJA

CREATE TABLE rejestracja
(
  id_user serial NOT NULL,
  typ_user character varying(2),
  "login" character varying(20) NOT NULL,
  haslo character varying(20) NOT NULL,
  email character varying(30),
  wojewodztwo character varying(20),
  imie character varying(20),
  nr_gg character varying(20),
  data_wpisu character varying(10),
  lat character varying(40),
  lng character varying(40),
  zdjecie character varying(200),
  CONSTRAINT rejestracja_pkey PRIMARY KEY (id_user)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE rejestracja OWNER TO postgres;


/*-----------------------------------------------*/
TABELA ULUBIONE

CREATE TABLE ulubione
(
  id serial NOT NULL,
  obiekt integer,
  uzytkownik character varying(40),
  CONSTRAINT ulubione_pkey PRIMARY KEY (id)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE ulubione OWNER TO postgres;



dane sa napewno wpisane dlatego niewiem dlaczego wychodzi ten ""...

gszpetkowski w tobie ostatnia nadzieja]]></description>
			<author><![CDATA[dummy@example.com (hetmanJIIIS)]]></author>
			<pubDate>Fri, 21 Oct 2011 20:34:16 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2773#p2773</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2772#p2772</link>
			<description><![CDATA[Czyli rozumiem, że kolumny lat i lng masz jako varchar(40) i poniższe zapytanie nie działa jak należy ?

[code]Select
    coordinateDistance(49.3, 19.95, lat::float, lng::float) As "Dystans [Km]",
    login AS "Użytkownik"
From rejestracja
Where
    login In (Select uzytkownik From ulubionestoki Where obiekt = 'Zakopane')
Order By "Dystans [Km]";[/code]

Komunikat błędu, który podałeś sugeruje, że w którymś wierszu wstawiona wartość lat, czy też lng to [b]pusty string[/b] np. możesz łatwo to sprawdzić jak Postgres się wtedy zachowuje przez:

[code]select ''::float;
ERROR:  invalid input syntax for type double precision: ""
LINE 1: select ''::float;[/code]]]></description>
			<author><![CDATA[dummy@example.com (gszpetkowski)]]></author>
			<pubDate>Fri, 21 Oct 2011 18:24:15 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2772#p2772</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2771#p2771</link>
			<description><![CDATA[gszpetkowski Po wykonaniu twojego kodu ( deklaracja funkji + zapytanie) zwrocilo mi error:
 
Problem jest w tym ze wszystkie lat i lng mam varchar(40) dlatego za kazdym razem musze w sposob nieuczciwy konwertowac za pomoca lat::float .... 
w tym przypadku jednak nawet hakjerskie sztuczki nie podolaly
jakies pomysly?

ERROR:  invalid input syntax for type double precision: ""

********** Błąd **********

ERROR: invalid input syntax for type double precision: ""
Stan SQL:22P02]]></description>
			<author><![CDATA[dummy@example.com (hetmanJIIIS)]]></author>
			<pubDate>Fri, 21 Oct 2011 17:03:41 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2771#p2771</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2751#p2751</link>
			<description><![CDATA[Dzięki gszpetkowski Postgisa mam zainstalowanego ale jeszcze nie wgłębiałem się w niego w takich zapytaniach :) 
Nie wiedziałem o tym "user" na przyszłość napewno będę pamiętać
Pozdrawiam
Michał]]></description>
			<author><![CDATA[dummy@example.com (hetmanJIIIS)]]></author>
			<pubDate>Thu, 13 Oct 2011 07:19:51 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2751#p2751</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2749#p2749</link>
			<description><![CDATA[Może coś takiego:

[code]Select
    coordinateDistance(49.3, 19.95, lat, lng) As "Dystans [Km]",
    login AS "Użytkownik"
From rejestracja
Where
    login In (Select uzytkownik From ulubionestoki Where obiekt = 'Zakopane')
Order By "Dystans [Km]";[/code]

Sądzę, że warto wyenkapsulować samo obliczenie odegłości, np. niech zajmuje się tym oddzielna funkcja SQL:

[code]-- Calculate distance of two geographic coordinates in kilometers unit
CREATE FUNCTION coordinateDistance(lat1 float, lng1 float, lat2 float, lng2 float)
RETURNS float
    AS $BODY$
        -- 6371 km is standarized by FAI (Fédération Aéronautique Internationale) sphere radius
        SELECT 6371 * acos
            (
                cos(radians($1)) * cos(radians($3)) * cos(radians($4) - radians($2))
                + sin(radians($1)) * sin(radians($3))
            )
    $BODY$
LANGUAGE SQL IMMUTABLE;[/code]

Przykładowy DDL z danymi:

[code]Create Table mapaStok (
    stok text Primary Key,
    lat double precision,
    lng double precision
);
Create Table rejestracja (
    login text Primary Key,
    lat double precision,
    lng double precision
);
Create Table ulubioneStoki (
    id serial Primary Key,
    obiekt text References mapaStok(stok),
    uzytkownik text References rejestracja(login)
);

Insert Into mapaStok (stok, lat, lng) Values
    ('Zakopane', 49.3, 19.95),
    ('Kielce', 50.883333, 20.616667);
Insert Into rejestracja (login, lat, lng) Values
    ('Michal', 50.0613892, 19.938333), -- Kraków
    ('Bartek', 52.406667, 16.923611), -- Poznań
    ('Zenon', 54.366667, 18.633333); -- Gdańsk
Insert Into ulubioneStoki (obiekt, uzytkownik) Values
    ('Zakopane', 'Michal'),
    ('Zakopane', 'Bartek'),
    ('Kielce', 'Zenon'),
    ('Kielce', 'Michal');[/code]

Wynik zapytania:

[code]   Dystans [Km]   | Użytkownik 
------------------+------------
   84.66677720873 | Michal
 405.461460646987 | Bartek
(2 rows)[/code]

Nawiasem pisząc w tabeli (nie myl sobie z bazą, to zupełnie dwa różne pojęcia) nie można było użyć "tak po prostu" kolumny o nazwie user, gdyż jest to [url=http://www.postgresql.org/docs/current/static/sql-keywords-appendix.html]zarezerwowane słowo kluczowe SQL[/url], choć zawsze można w takim przypadku użyć cudzysłowów np. [i]"user"[/i] albo jak wyżej zastosować inną nazwę. Oprócz tego typy [i]double precision[/i] oraz [i]float[/i] są w Postgresie tożsame.

Dla Twoich zastosowań w dalszej perspektywie ew. przydatne może być rozszerzenie [url=http://postgis.refractions.net/]PostGIS[/url].]]></description>
			<author><![CDATA[dummy@example.com (gszpetkowski)]]></author>
			<pubDate>Mon, 10 Oct 2011 21:27:16 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2749#p2749</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2748#p2748</link>
			<description><![CDATA[Witam wszystkich
Mam kolejny problem i nie chcę zaczynac nowego tematu bo mysle ze zapytanie powyzsze ma duzo wspolnego z zapytaniem wymaganym.

Posiadam trzy bazy:
mapaStok (stok, lat, lng)
np. (Jaworzyna, 50.2323, 23.33333)
      (Wierchomla, 90.2323, 70.33333)

rejestracja (user, lat, lng)
np. (Michal, 10.22222, 30.0121)
      (Bartek, 13.2322, 40.0331)

ulubioneStoki (id, obiekt, uzytkownik)

LAT i LNG to wspolrzedne geograficzne.

Potrzebuje ZAPYTANIE o uzytkowników ktorzy maja dany stok w ulubionych i sa najblizej GO polozeni (obliczanie polozenia na poczatku tematu)
zeby wygladalo miedzyinnymi tak:
Jaworzyna:
10km | Michal | 
20KM | gszpetkowski |
30KM | obama|
(pamietajac ze wszyscy powyzsi uzytkownicy maja w ulubionych stok Jaworzyna)

Zapytanie powyzej chyba pasuje do tego co potrzebje ale nie moge wymyslec jak je przerobic.
Jakies pomysly? gszpetkowski :-)?

(np.)
Obliczanie odleglosci i sortowanie od najblizszej odleglosci (ALE wartosci sa wpisywane statycznie ( bez WHERE STOK=Jaworzyna)
SELECT lat, lng, login,
 ( 6371 * acos( cos( radians(50.01)) * cos( radians( lat::float ) ) * cos( radians( lng::float ) - radians(19.01) )
   + sin( radians(50.01) ) * sin( radians( lat::float ) ) )) AS dystans

  FROM rejestracja ORDER BY dystans ASC

P.S: Poprostu jak by mozna bylo tam wstawic za]]></description>
			<author><![CDATA[dummy@example.com (hetmanJIIIS)]]></author>
			<pubDate>Mon, 10 Oct 2011 07:06:14 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2748#p2748</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2678#p2678</link>
			<description><![CDATA[Zrozumiałem dziękuję :) 
Pozdrawiam
Michał]]></description>
			<author><![CDATA[dummy@example.com (hetmanJIIIS)]]></author>
			<pubDate>Fri, 02 Sep 2011 11:17:46 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2678#p2678</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2677#p2677</link>
			<description><![CDATA[Chodzi o to, że podzapytanie w takim przypadku musi zostać ujęte w nawias i oznaczone aliasem. Zgodnie z dokumentacją, [url=http://www.postgresql.org/docs/current/static/queries-table-expressions.html#QUERIES-SUBQUERIES]7.2.1.3. Subqueries[/url]:

[quote]Subqueries specifying a derived table must be enclosed in parentheses and [b]must[/b] be assigned a table alias name.[/quote]

Jest to to także pewne usprawnienie, bo mając tabelę o długiej nazwie można posługiwać się krótkim aliasem np. o.obiekt, zamiast pisać KwartalnaOcenaPracownikówEtatowych.obiekt (nie zawsze istnieje potrzeba użycia kolumny w taki sposób, dzieje się jeśli np. w ramach złączenia dwie tabelę mają kolumny o identycznych nazwach i trzeba wtedy rozróżnić która jest od kogo, czyli po prostu wtedy użycie samej nazwy kolumny byłoby niejednoznaczne).]]></description>
			<author><![CDATA[dummy@example.com (gszpetkowski)]]></author>
			<pubDate>Fri, 02 Sep 2011 11:02:06 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2677#p2677</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2676#p2676</link>
			<description><![CDATA[Dzięki wielkie gszpetkowski  nie wiem czy dało by się lepiej odpisać na moje pytanie :-) 
Niestety
nie mogę zmienić już bazy, początkowo planując bazę postawiłem na banalność zapytania miały być proste ( WHERE, SELECT, ....)
Dopiero jak chciałem rozbudować aplikację zauważyłem takie niedociągnięcia dlatego muszę ratować się twoimi pierwszymi radami,  a inne (tworzenie nowej bazy) są już skopiowane i leżą na dysku czekając na lepsze dni hehe :) 
Z wyrazami szacunku za spędzony czas w pełni odpowiadając na moje pytanie- DZIĘKUJĘ :-)

P.S wybrałem sposób pierwszy i kod wygląda następująco:
SELECT
    id_punkt,
    lat,
    lng,
    nazwa,
    ( 6371 * acos( cos( radians(23.000)) * cos( radians( lat::float ) )
    * cos( radians( lng::float ) - radians(19.000) )
    + sin( radians(23.000) ) * sin( radians( lat::float ) ) )) AS dystans 
FROM
    mapaDodaj INNER JOIN (SELECT DISTINCT obiekt FROM ulubione WHERE uzytkownik = 'Michal') o
        ON id_punkt = obiekt
ORDER BY
    dystans ASC
P.S II: wszystko jest dla mnie zrozumiałe ale to "o" obok 
 = 'Michal') o ON 
Co ono oznacza do czego służy?]]></description>
			<author><![CDATA[dummy@example.com (hetmanJIIIS)]]></author>
			<pubDate>Fri, 02 Sep 2011 06:05:27 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2676#p2676</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2675#p2675</link>
			<description><![CDATA[Rozumiem, że chciałeś docelowo uzyskać relację wiele do wielu i proponowałbym następujące rozwiązanie:

[code]Drop Table If Exists ulubione;
Drop Table If Exists mapaDodaj;
Drop Table If Exists rejestracja;

Create Table mapaDodaj (
    id_punkt integer Primary Key,
    lat real,
    lng real,
    nazwa text
);

Create Table rejestracja (
    id integer Primary Key,
    login text
);

Create Table ulubione(
    obiekt integer References mapaDodaj(id_punkt),
    uzytkownik integer References rejestracja(id),
    Primary Key(obiekt, uzytkownik)
);[/code]

Przykładowe dane:

[code]Insert Into mapaDodaj (id_punkt, lat, lng, nazwa) Values
    (123, 23.000, 19.000, 'wiechomla'),
    (124, 33.000, 20.000, 'swidnica'),
    (125, 44.000, 22.000, 'turbacz'),
    (126, 55.000, 24.000, 'Kasprowy');
    
Insert Into rejestracja (id, login) Values
    (12, 'Michal'), (13, 'Bartek'), (14, 'Zygmunt');
    
Insert Into ulubione (uzytkownik, obiekt) Values
    (12, 124), (13, 123), (14, 125), (12, 123), (14, 124);[/code]

W takim przypadku docelowe zapytanie wygląda tak:

[code]SELECT
    id_punkt,
    lat,
    lng,
    nazwa,
    ( 6371 * acos( cos( radians(23.000)) * cos( radians( lat::float ) )
    * cos( radians( lng::float ) - radians(19.000) )
    + sin( radians(23.000) ) * sin( radians( lat::float ) ) )) AS dystans
FROM
    mapaDodaj
WHERE
    id_punkt IN
        (SELECT obiekt
        FROM ulubione u INNER JOIN rejestracja r
            ON u.uzytkownik = r.id AND login = 'Michal')
ORDER BY
    dystans; -- implicit ASC, więc nie trzeba pisać[/code]

Wynik:

[code] id_punkt | lat | lng |   nazwa   |     dystans
----------+-----+-----+-----------+------------------
      123 |  23 |  19 | wiechomla |                0
      124 |  33 |  20 | swidnica  | 1116.25490067431
(2 rows)[/code]]]></description>
			<author><![CDATA[dummy@example.com (gszpetkowski)]]></author>
			<pubDate>Thu, 01 Sep 2011 20:22:21 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2675#p2675</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2674#p2674</link>
			<description><![CDATA[Jesteś pewien, że kolumna login znajduje się w tabeli mapaDodaj ? Gdyby tak było, to w pierwszym zapytaniu wystarczyłoby dodać 

[code]WHERE login = 'Michal'[/code]

a w drugim uzupełnić do

[code]id_punkt IN (SELECT obiekt FROM ulubione) AND login = 'Michal' [/code]

Jednakże z tego co umieściłeś na początku wynika jasno, że kolumna login znajduje się w tabeli rejestracja, przy czym rozumiem, że sprawniej byłoby użyć kolumny uzytkownik z ulubione, przez tj. w pierwszym zapytaniu zamienić na:

[code]mapaDodaj INNER JOIN (SELECT DISTINCT obiekt FROM ulubione WHERE uzytkownik = 'Michal') o[/code]

a w drugim

[code]id_punkt IN (SELECT obiekt FROM ulubione WHERE uzytkownik = 'Michal')[/code]]]></description>
			<author><![CDATA[dummy@example.com (gszpetkowski)]]></author>
			<pubDate>Thu, 01 Sep 2011 19:48:46 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2674#p2674</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2673#p2673</link>
			<description><![CDATA[Takie jeszcze pytanie jak dorobic jeszcze cos takiego żeby dodatkowo (oprocz juz zrobionych rzeczy) wybieralo rekordy tam gdzie login='Michal'
bo WHERE login='Michal' nie dziala tzn niewiem gdzie mozna wstawic WHERE w takim kodzie sql :) 
!!Pole login jest kolumna w bazie mapaDodaj

gszpetkowski wymyslisz cos?]]></description>
			<author><![CDATA[dummy@example.com (hetmanJIIIS)]]></author>
			<pubDate>Thu, 01 Sep 2011 18:29:41 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2673#p2673</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Relacje wiele do wielu- problem z zapytaniem]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=2661#p2661</link>
			<description><![CDATA[Poprawna odpowiedź :-) dziękuję gszpetkowski]]></description>
			<author><![CDATA[dummy@example.com (hetmanJIIIS)]]></author>
			<pubDate>Thu, 25 Aug 2011 05:51:07 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=2661#p2661</guid>
		</item>
	</channel>
</rss>
