<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Forum PostgreSQL - group by]]></title>
	<link rel="self" href="http://forum.postgresql.org.pl/extern.php?action=feed&amp;tid=440&amp;type=atom"/>
	<updated>2010-05-19T18:50:01Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.postgresql.org.pl/viewtopic.php?id=440</id>
		<entry>
			<title type="html"><![CDATA[Odp: group by]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=2044#p2044"/>
			<content type="html"><![CDATA[Pivota możesz zrobić na przykład tak
[code]
select kategoria,
           (select count(*) from tabela t2 where t2.kategoria=t1.kategoria and          
             t2.wojewodztwo='pomorskie') pomorskie,
           (select count(*) from tabela t2 where t2.kategoria=t1.kategoria and          
             t2.wojewodztwo='lubuskie') lubuskie,
           (select count(*) from tabela t2 where t2.kategoria=t1.kategoria and          
             t2.wojewodztwo='mazowieckie') mazowieckie,
...
<i tak dalej dla wszystkich województw>
...
from tabela t1 group by kategoria;
[/code]
Trochę to jednak pracochłonne.
Inne wyjście to użyć funkcji crosstable, którą możesz zainstalować ze źródeł postgresa z katalogu crontib. Ja osobiście nigdy tej funkcji nie użyłem więc się nie wypowiadam, ale tu [url]http://www.postgresql.org/docs/current/static/tablefunc.html[/url]
piszą że działa.]]></content>
			<author>
				<name><![CDATA[rski]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=26</uri>
			</author>
			<updated>2010-05-19T18:50:01Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=2044#p2044</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: group by]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=2042#p2042"/>
			<content type="html"><![CDATA[Chciałbym jednym odpytaniem zliczyć ilość rekordów w kategorii z podziałem na województwa

Województwo,                         mazow   podlaskie  lubuskie
Administracja publicza;                45               60         56
Szpitale                                      56               76          87

Układ tabeli jest taki:     Telefon, nazwa, wojewodztwo, kategoria 
To jest baza biznesowa.
Bez problemy zliczy mi ilość rekordów w poszczególnych kategoriach z warunkiem where wojewodztwo = 'mazow' group by kategoria.
Chciałbym osiągnąć wynik zliczający ilość rekordów z podziałem na kategorię, wojewodztwa j.w. Nie wiem czy jest to możliwe.]]></content>
			<author>
				<name><![CDATA[dartagnan]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=974</uri>
			</author>
			<updated>2010-05-19T07:25:06Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=2042#p2042</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: group by]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=2041#p2041"/>
			<content type="html"><![CDATA[Nie wiem czy dobrze zrozumiałem
[code]
select kategoria, wojewodztwo, count(*) from tabela  group by kategoria, wojewodztwo
[/code]
?

Może podaj jakiś przykład danych i co chcesz osiągnąć.]]></content>
			<author>
				<name><![CDATA[rski]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=26</uri>
			</author>
			<updated>2010-05-19T05:39:52Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=2041#p2041</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[group by]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=2040#p2040"/>
			<content type="html"><![CDATA[Tabela zawierająca kolumny telefon, wojewodztwo, kategoria itp.

select kategoria, count(*) from tabela where wojewodztwo = 'mazowieckie' group by kategoria

zlicza nam rekordy w danych kategoriach w danym wojewodztwie

Czy można jednym odpytaniem zliczyć ilość rekordów w każdej kategorii z podziałem na województwa ?]]></content>
			<author>
				<name><![CDATA[dartagnan]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=974</uri>
			</author>
			<updated>2010-05-18T22:02:03Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=2040#p2040</id>
		</entry>
</feed>
