<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Forum PostgreSQL - Numerowanie wierszy w zapytaniu SELECT]]></title>
	<link rel="self" href="http://forum.postgresql.org.pl/extern.php?action=feed&amp;tid=52&amp;type=atom"/>
	<updated>2008-07-01T20:43:22Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.postgresql.org.pl/viewtopic.php?id=52</id>
		<entry>
			<title type="html"><![CDATA[Odp: Numerowanie wierszy w zapytaniu SELECT]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=187#p187"/>
			<content type="html"><![CDATA[Na funkcje przyjdzie czas... Na razie to było pytanie akademickie z cyklu "jest łatwe ale nie mam punktu zaczepienia". Teraz mam termin do połowy lipca żeby zrobić sprawozdanie do urzędów no i oczywiście muszę wprowadzić prawdziwe dane i przepisać na urzędowy formularz. Tymczasem dziękuję, jak wymyślę jak to zrobić w inny sposób to nie omieszkam napisać na forum.

Pozdrawiam
Tomasz Konopiński]]></content>
			<author>
				<name><![CDATA[tkonop]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=140</uri>
			</author>
			<updated>2008-07-01T20:43:22Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=187#p187</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: Numerowanie wierszy w zapytaniu SELECT]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=185#p185"/>
			<content type="html"><![CDATA[moze lepiej zdefiniowac funkcje plpgsql wykonujaca takiego selecta, mozesz w niej uzyc petli i licznik nie bedzie potrzebny. Kiedys robilem takie numerowanie korzystajac z funkcji generate_series(), ale teraz juz niestety nie pamietam jak to zrobilem :).]]></content>
			<author>
				<name><![CDATA[rski]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=26</uri>
			</author>
			<updated>2008-07-01T20:11:46Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=185#p185</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: Numerowanie wierszy w zapytaniu SELECT]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=184#p184"/>
			<content type="html"><![CDATA[Ups. Spróbowałem ponownie wykonać to zapytanie i wyszło poprawnie. Chyba gdzieś po drodze błąd popełniłem. W takim razie pozostaje mi tylko znalezienie sposobu na każdorazowe zerowanie licznika.
[code]create sequence lp start 1;
select nextval('lp') as "L.p.", grupypojazdowb.id as "Rodzaj silnika spalinowego",
rodzajpaliwa.nazwa as "Rodzaj paliwa",
sum(pozycjefaktury.ilosc* rodzajpaliwa.gestosc/1000) as "Zużycie paliw [Mg]",
stawkaoplaty.stawka as "Jednostkowa stawka opłaty [zł/Mg]",
stawkaoplaty.stawka * sum(pozycjefaktury.ilosc* rodzajpaliwa.gestosc/1000) as "Wysokość opłaty"
from pozycjefaktury, rodzajpaliwa, samochod, grupypojazdowb, stawkaoplaty
where pozycjefaktury.rodzajpaliwa = rodzajpaliwa.id
and pozycjefaktury.samochod = samochod.nrrej
and samochod.grupypojazdowb = grupypojazdowb.id
and stawkaoplaty.grupypojazdowb = grupypojazdowb.id
and stawkaoplaty.rodzajpaliwa = rodzajpaliwa.id
group by grupypojazdowb.id, grupypojazdowb.opis, rodzajpaliwa.nazwa, stawkaoplaty.stawka
order by grupypojazdowb.id, rodzajpaliwa.nazwa;[/code]
Wynik:
[code]L.p. | Rodzaj silnika spalinowego |      Rodzaj paliwa      |   Zużycie paliw [Mg]   | Jednostkowa stawka opłaty [zł/Mg] | Wysokość opłaty 
------+----------------------------+-------------------------+------------------------+-----------------------------------+-----------------
    1 |                          4 | Benzyna silnikowa       | 1.22599036650000000000 |                             14.43 | 17.691040988595
    2 |                          4 | Gaz płynny propan-butan | 0.43265350000000000000 |                             18.75 |     8.112253125
    3 |                          4 | Olej napędowy           | 1.20558480000000000000 |                              9.94 |    11.983512912
    4 |                          8 | Olej napędowy           | 8.38740000000000000000 |                             40.41 |      338.934834
(4 rows)[/code]
Pozdrawiam
Tomasz Konopiński]]></content>
			<author>
				<name><![CDATA[tkonop]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=140</uri>
			</author>
			<updated>2008-07-01T19:54:33Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=184#p184</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: Numerowanie wierszy w zapytaniu SELECT]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=183#p183"/>
			<content type="html"><![CDATA[pokaz tego selecta]]></content>
			<author>
				<name><![CDATA[rski]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=26</uri>
			</author>
			<updated>2008-07-01T19:38:32Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=183#p183</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: Numerowanie wierszy w zapytaniu SELECT]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=182#p182"/>
			<content type="html"><![CDATA[W międzyczasie doszedłem do tego, ale ten licznik podlega sortowaniu i dostaję zamiast 1,2,3,4 -> 1,3,4,2]]></content>
			<author>
				<name><![CDATA[tkonop]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=140</uri>
			</author>
			<updated>2008-07-01T19:35:40Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=182#p182</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: Numerowanie wierszy w zapytaniu SELECT]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=181#p181"/>
			<content type="html"><![CDATA[nie mozesz sobie zdefiniowac licznik i uzyc go?]]></content>
			<author>
				<name><![CDATA[rski]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=26</uri>
			</author>
			<updated>2008-07-01T19:27:45Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=181#p181</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Numerowanie wierszy w zapytaniu SELECT]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=180#p180"/>
			<content type="html"><![CDATA[Witam serdecznie.

Czy istnieje funkcja pozwalająca wygenerować liczbę porządkową w zapytaniu SELECT. Kolumna Lp nie ma być powiązana z jakimikolwiek danymi w bazie danych. Ma być generowana wyłącznie na potrzeby konkretnego zapytania.

Przekopałem Googla, ale albo słabo szukałem, albo faktycznie nie ma rozwiązania mojego problemu.

Pozdrawiam.
Tomasz Konopiński]]></content>
			<author>
				<name><![CDATA[tkonop]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=140</uri>
			</author>
			<updated>2008-07-01T15:13:11Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=180#p180</id>
		</entry>
</feed>
