[pgsql-jp: 30928] Re: レコード内容から列名を取得・生成?するSQL
Takao Kato
sirius @ jp.fujitsu.com
2003年 9月 3日 (水) 13:55:23 JST
加藤@川崎です。
> せっかく喜んでいるのに水を差すようですが、あれって上のように
> 複数の列で使った場合、中身の順序が必ず対応するんでしょうか?
> 何もしなければ、わざわざ違う順になるとは考えにくいですが、
> それぞれをソートしちゃうとだめですよね。
> (集合になってるので順序を見てはいけないってことでしょうね)
一応サンプルした範囲ですが(ソートした順番で)集合化されていました。
ただ、サンプル数が少なかったので、
=> SELECT * FROM t_test_datas;
t | i | d
--------+-------+----
T01 | 1 | aaa
T02 | 2 | aab
:
T26 | 26 | aaz
T01 | 27 | aba
T02 | 28 | abb
:
T26 | 17576 | zzz
(rows 17576)
で以下のSQLを試してみました。
=> SELECT t,int4_list(i),text_list(d) FROM t_test_datas GROUP BY t;
結果的に一切ソートしていなかったので順番はめちゃくちゃでしたが i と d
の組合せは問題ありませんでした。ソートする要素がなければ駄目ですが、ソー
トする要素さえあれば、
=> SELECT t,int4_list(i),text_list(d) FROM (
SELECT t,i,d FROM t_test_datas ORDER BY i) a GROUP BY t;
でうまく動作しますね。^^;
-------------------------------------------------------------
加藤@川崎
pgsql-jp メーリングリストの案内