<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Forum PostgreSQL - Zamiana typu tablicowego na kolumnę danych]]></title>
	<link rel="self" href="http://forum.postgresql.org.pl/extern.php?action=feed&amp;tid=2289&amp;type=atom"/>
	<updated>2015-07-16T08:04:28Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.postgresql.org.pl/viewtopic.php?id=2289</id>
		<entry>
			<title type="html"><![CDATA[Odp: Zamiana typu tablicowego na kolumnę danych]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=5521#p5521"/>
			<content type="html"><![CDATA[Dzięki! :)
Właśnie o to chodziło :)
Czy mógłbyś mi podpowiedzieć jeszcze jak uzyskać pewną elastyczność w tej części
" generate_series(1,[b][color=#FF0000]3[/color][/b],1) "
mianowicie nie wiem jak długa jest tablica, a potrzebuje przetworzyć wszystkie jej elementy, ale nic ponad to.


Edit:
Znalazłem rozwiązanie:

SELECT s AS kolejne, "ID", "X_Values"[s] AS X, "Y_Values"[s] as Y
FROM (
	SELECT generate_subscripts("X_Values", 1) AS s, "X_Values", "Y_Values", "ID"
	FROM "Tabela_1"
      ) sub;


Jeszcze raz dzięki za pomoc, bez niej nie wiedziałem nawet gdzie szukać.


Ku potomnym: [url]http://www.postgresql.org/docs/9.1/static/functions-srf.html[/url]]]></content>
			<author>
				<name><![CDATA[bafra]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=2494</uri>
			</author>
			<updated>2015-07-16T08:04:28Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=5521#p5521</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Odp: Zamiana typu tablicowego na kolumnę danych]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=5520#p5520"/>
			<content type="html"><![CDATA[Może tak
select t.id ,t.x_values[s.nr],t.y_values[s.nr] from tabela_1 t ,generate_series(1,3,1) as s(nr) order by 1,2]]></content>
			<author>
				<name><![CDATA[c_michal]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=627</uri>
			</author>
			<updated>2015-07-15T19:00:21Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=5520#p5520</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Zamiana typu tablicowego na kolumnę danych]]></title>
			<link rel="alternate" href="https://forum.postgresql.org.pl/viewtopic.php?pid=5518#p5518"/>
			<content type="html"><![CDATA[Witam,
Mam pewien problem z PostrgeSQLem. 

Mam Tabela_1 jak poniżej
CREATE TABLE Tabela_1
(
  ID serial NOT NULL,
  X_Values integer[],
  Y_Values integer[]
)

Przykładowe dane:

ID          X_Values             Y_Values
1           {1,2,3}               {2,4,6}
2           {1,2,3}               {3,7,9}
...

I to co potrzebuję, a nie mogę osiągnąć to Tabela_2 wyglądająca tak:

ID          X                          Y
1            1                         2
1            2                         4
1            3                         6
2            1                         3
2            2                         7
2            3                         9
...

Na codzień nie pracuję z PostgreSQLem i nie za bardzo wiem jak się zabrać za to.
Macie koledzy jakieś pomysły?]]></content>
			<author>
				<name><![CDATA[bafra]]></name>
				<uri>https://forum.postgresql.org.pl/profile.php?id=2494</uri>
			</author>
			<updated>2015-07-15T13:11:37Z</updated>
			<id>https://forum.postgresql.org.pl/viewtopic.php?pid=5518#p5518</id>
		</entry>
</feed>
