<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Forum PostgreSQL - Sumowanie rekordow z roznych tabel]]></title>
	<link rel="self" href="http://forum.postgresql.org.pl/extern.php?action=feed&amp;tid=636&amp;type=atom"/>
	<updated>2011-09-22T07:33:35Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.postgresql.org.pl/viewtopic.php?id=636</id>
		<entry>
			<title type="html"><![CDATA[Odp: Sumowanie rekordow z roznych tabel]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=2723#p2723"/>
			<content type="html"><![CDATA[Dzięki gszpetkowski za lekcję. :-)
Zapytanie działa i wynik wyświetla jak powinien. 
Pozdrawiam
Michał]]></content>
			<author>
				<name><![CDATA[hetmanJIIIS]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=1268</uri>
			</author>
			<updated>2011-09-22T07:33:35Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=2723#p2723</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: Sumowanie rekordow z roznych tabel]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=2718#p2718"/>
			<content type="html"><![CDATA[O ile nie przeoczyłem czegoś istotnego, to wystarczy dodać zwykłą klauzulę ORDER BY:

[code]Select sum(sum), uzytkownik
From
    (Select sum(punkty), uzytkownik From tab1 Group By uzytkownik
        Union All
    Select sum(punkty), login From tab2 Group By login) s
Group By uzytkownik
Order By sum DESC;[/code]

Przykładłowy wynik:

[code] sum | uzytkownik 
-----+------------
  10 | user2
   8 | user3
   7 | user1
(3 rows)[/code]

Swoją drogą nie wiedziałem, że przy takiej unii, gdzie są różne nazwy kolumn Postgres bierze "na wyjście" pierwszą nazwę, czyli tutaj uzytkownik.

Pozdrawiam,
Grzesiek]]></content>
			<author>
				<name><![CDATA[gszpetkowski]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=1223</uri>
			</author>
			<updated>2011-09-20T23:53:32Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=2718#p2718</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: Sumowanie rekordow z roznych tabel]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=2717#p2717"/>
			<content type="html"><![CDATA[Dzięki gszpetkowski :) jak zwykle świetnie.
Dodatkowo na zadanie mam jeszcze wyświetlenie posortowanych użytkowników wg. punktów od najwyższego do najniższego

trochę próbowałem zmieniać kod gszpetkowski'ego i udało mi się wyświetlić sumy z dwóch baz ALE BEZ SORTOWANIA (DESC nie mogę nigdzie wcisnąć):

Select sum(sum), uzytkownik
From
    (Select sum(punkty), uzytkownik From tab1 group by uzytkownik
        Union All
Select sum(punkty), login From tab2 group by login) s group by uzytkownik;

Dla szybszego zobrazowania kolumny:

tab1= punkty || uzytkownik

tab2=punkty||login

Wynik powinien być taki:
user1=13
user3=11
user2=9
...

Ktoś ma jakieś pomysły?? gszpetkowski jak zwykle liczę na twoją mądrość.
Pozdrawiam
Michał]]></content>
			<author>
				<name><![CDATA[hetmanJIIIS]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=1268</uri>
			</author>
			<updated>2011-09-20T18:20:32Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=2717#p2717</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: Sumowanie rekordow z roznych tabel]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=2705#p2705"/>
			<content type="html"><![CDATA[Przychodzi mi do głowy użycie [url=http://www.postgresql.org/docs/current/static/queries-union.html]UNION ALL[/url] i zsumowanie poszczególnych sum cząstkowych:

[code]Select sum(sum)
From
    (Select sum(punkty) From tab1 Where uzytkownik = 'superJas'
        Union All
    Select sum(punkty) From tab2 Where uzytkownik = 'superJas'
        Union All
    Select sum(punkty) From tab3 Where uzytkownik = 'superJas') s;[/code]]]></content>
			<author>
				<name><![CDATA[gszpetkowski]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=1223</uri>
			</author>
			<updated>2011-09-09T22:29:20Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=2705#p2705</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Sumowanie rekordow z roznych tabel]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=2703#p2703"/>
			<content type="html"><![CDATA[Mam trzy tabele:
1) tab1
2)tab2
3)tab3

kazda z tabel ma kolumne punkty i uzytkownik potrzebuje zrobic zapytanie ktore bedzie sumowac wszystkie punkty z kolumn "punkty" (tabel 1, 2, 3) tam gdzie uzytkownik = superJas :) 
Z gory dziekuje
Michał]]></content>
			<author>
				<name><![CDATA[hetmanJIIIS]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=1268</uri>
			</author>
			<updated>2011-09-09T19:59:15Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=2703#p2703</id>
		</entry>
</feed>
