<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Forum PostgreSQL - update tabeli]]></title>
	<link rel="self" href="http://forum.postgresql.org.pl/extern.php?action=feed&amp;tid=1418&amp;type=atom"/>
	<updated>2013-01-12T05:40:16Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.postgresql.org.pl/viewtopic.php?id=1418</id>
		<entry>
			<title type="html"><![CDATA[Odp: update tabeli]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=3852#p3852"/>
			<content type="html"><![CDATA[Witam To jest super, to jest niesamowite informacje, i również patrząc na to.W bazie zmieniłem to ręcznie ale na przyszłość chcę tego unikać. Chodzi o uaktualnienie tylko tych które są w tabeli. Przy dodawaniu nowych to mam zrobione w php ale jeszcze nie zmieniałem tabeli.
Pozdrawiam]]></content>
			<author>
				<name><![CDATA[michaeljee]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=1522</uri>
			</author>
			<updated>2013-01-12T05:40:16Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=3852#p3852</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: update tabeli]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=3834#p3834"/>
			<content type="html"><![CDATA[Tak poradziłem sobie,
Wersja jest 8.3 więc zrobiłem to przez php w pętlach.
Poszło szybko.]]></content>
			<author>
				<name><![CDATA[przesq]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=1211</uri>
			</author>
			<updated>2012-12-06T14:04:07Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=3834#p3834</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: update tabeli]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=3817#p3817"/>
			<content type="html"><![CDATA[Czesc
Moze sobie poradziles?

Ja dodal bym kolumne. Utworzyl SEQUENS'a w tempie i wywolaj update z SEQUENS'em

Jak potrzebujesz wiecej info daj znac]]></content>
			<author>
				<name><![CDATA[gafel88]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=1160</uri>
			</author>
			<updated>2012-12-04T05:38:50Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=3817#p3817</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: update tabeli]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=3798#p3798"/>
			<content type="html"><![CDATA[Całkowicie zgadzam się z rski, przy paru tysiącach rekordów nie warto robić triggera, wystarczy użyć windows function, działają od wersji 8.4

select id_wgdd, id_wgd, data_add, row_number() over (partition by id_wgd  order by data_add ) as pozycja from wgdd_dane order by id_wgdd

Jak masz problemy wydajnościowe to ustaw pole  id_wgdd jako primary key, a pole id_wgd jako klucz obcy dodaj też index]]></content>
			<author>
				<name><![CDATA[c_michal]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=627</uri>
			</author>
			<updated>2012-11-17T19:35:57Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=3798#p3798</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: update tabeli]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=3797#p3797"/>
			<content type="html"><![CDATA[na pewno potrzebuję ponieważ mam już kilka tysięcy rekordów w tej tabeli i teraz wyszło przy generowaniu pdf, że kolejność (struktura tabeli jest tylko częściowa) sortowania względem daty dodawania nie zawsze daje prawidłowy rezultat - potrzeba było wstawić rekord pośrodku powiedzmy 100 elementowego id_wgd. W bazie zmieniłem to ręcznie ale na przyszłość chcę tego unikać. Chodzi o uaktualnienie tylko tych które są w tabeli. Przy dodawaniu nowych to mam zrobione w php ale jeszcze nie zmieniałem tabeli.
Jeżeli się nie da to zrobię tak, że wstawie dla wszystkich 1 i sortował będę po pozycji, data_add. Przy takim założeniu wynik będzie prawidłowy a wątek można zamknąć.]]></content>
			<author>
				<name><![CDATA[przesq]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=1211</uri>
			</author>
			<updated>2012-11-16T21:04:08Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=3797#p3797</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: update tabeli]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=3796#p3796"/>
			<content type="html"><![CDATA[Jedyne co mi przychodzi na mysl to trigger ... ale stanowczo odradzam to rozwiązanie z powodów wydajnościowych. Na pewno potrzebujesz te kolumnę w tej tabeli. Nie wystarczy Ci widok załozony na tej tabli z dodatkową taką kolumną obliczaną dynamicznie przy użyciu funkcji analitycznych.]]></content>
			<author>
				<name><![CDATA[rski]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=26</uri>
			</author>
			<updated>2012-11-16T17:41:09Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=3796#p3796</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[update tabeli]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=3795#p3795"/>
			<content type="html"><![CDATA[Mam tabele o strukturze:

[code]
CREATE TABLE wgdd_dane (
  id_wgdd serial NOT NULL,
  id_wgd integer NOT NULL,
  data_add timestamp without time zone NOT NULL
);

insert into wgdd_dane values (1, 1, '2012-02-10 11:54:54');
insert into wgdd_dane values (2, 1, '2012-02-08 11:54:54');
insert into wgdd_dane values (3, 1, '2012-02-11 11:54:54');
insert into wgdd_dane values (4, 2, '2012-02-10 11:54:54');
insert into wgdd_dane values (5, 2, '2012-02-10 11:54:55');
insert into wgdd_dane values (6, 2, '2012-02-10 11:54:58');
insert into wgdd_dane values (7, 3, '2012-02-10 11:54:54');
insert into wgdd_dane values (8, 3, '2012-02-10 11:44:54');
insert into wgdd_dane values (9, 2, '2012-02-10 11:54:56');
insert into wgdd_dane values (10, 2, '2012-02-10 11:54:57');
[/code]

Potrzebuję dołożyć do tej tabeli kolumnę pozycja (integer) o wartości zwiększanej o 1 (na starcie = 1) dla tych samych id_wgd zgodnie z data_add. id_wgd nie muszą być po kolei.
Jeżeli id_wgd się zmienia to licznik startuje na nowo.]]></content>
			<author>
				<name><![CDATA[przesq]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=1211</uri>
			</author>
			<updated>2012-11-16T10:01:45Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=3795#p3795</id>
		</entry>
</feed>
