<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Forum PostgreSQL - problem z zapytaniem, proszę o pomoc]]></title>
		<link>https://forum.postgresql.org.pl/viewtopic.php?id=1219</link>
		<description><![CDATA[Najświeższe odpowiedzi w problem z zapytaniem, proszę o pomoc.]]></description>
		<lastBuildDate>Mon, 20 Feb 2012 10:27:50 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Odp: problem z zapytaniem, proszę o pomoc]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=3461#p3461</link>
			<description><![CDATA[[quote=neon]Dla ciekawości.

Można jeszcze wykonać takie zapytanie:
[code]
SELECT DISTINCT t1.product  FROM test as t1 JOIN test as t2 ON t1.product = t2.product 
WHERE t1.cecha = 1 AND t2.cecha = 2;
[/code]

Chociaż, jest ono wolniejsze od przykładu podanego przez AsYlum.[/quote]

W przypadku większej ilości cech ten warunek będzie koszmarnie długi, a zakładam, że to ma się możliwie dynamicznie skalować. ;)]]></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?pid=3461#p3461</guid>
		</item>
		<item>
			<title><![CDATA[Odp: problem z zapytaniem, proszę o pomoc]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=3455#p3455</link>
			<description><![CDATA[Dla ciekawości.

Można jeszcze wykonać takie zapytanie:
[code]
SELECT DISTINCT t1.product  FROM test as t1 JOIN test as t2 ON t1.product = t2.product 
WHERE t1.cecha = 1 AND t2.cecha = 2;
[/code]

Chociaż, jest ono wolniejsze od przykładu podanego przez AsYlum.]]></description>
			<author><![CDATA[dummy@example.com (neon)]]></author>
			<pubDate>Sat, 18 Feb 2012 12:49:05 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=3455#p3455</guid>
		</item>
		<item>
			<title><![CDATA[Odp: problem z zapytaniem, proszę o pomoc]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=3415#p3415</link>
			<description><![CDATA[Pewnie jest lepszy sposób, ale taki wydaje się działać:

[code]
SELECT
  sub.id_produktu
FROM
(
  SELECT 
    id_produktu, count(*) AS il 
  FROM  
    produkty_wlasciwosci 
  WHERE
   id_cechy IN (1,2) 
  GROUP BY
    id_produktu
) AS sub
WHERE sub.il > 1
[/code]

Warunek where sub.il to ilosc parametrow w id_cechy in (...) - 1

dla dwóch parametrów > 1 dla trzech > 2 etc...]]></description>
			<author><![CDATA[dummy@example.com (AsYlum)]]></author>
			<pubDate>Thu, 09 Feb 2012 13:08:00 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=3415#p3415</guid>
		</item>
		<item>
			<title><![CDATA[problem z zapytaniem, proszę o pomoc]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=3414#p3414</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 (ir_admin)]]></author>
			<pubDate>Wed, 08 Feb 2012 18:43:17 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=3414#p3414</guid>
		</item>
	</channel>
</rss>
