回答編集履歴
2
変更
answer
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
一行にまとめて
|
1
|
+
一行にまとめて出力します。
|
2
2
|
```sql
|
3
3
|
create temp table table_a (fld1 text);
|
4
4
|
insert into table_a values
|
@@ -15,7 +15,7 @@
|
|
15
15
|
|
16
16
|
```
|
17
17
|
|
18
|
-
複数行
|
18
|
+
複数行で出力します
|
19
19
|
```sql
|
20
20
|
select
|
21
21
|
( select array_to_string(array(select substr(f1,strpos(f1,': ')+2)
|
1
追加
answer
CHANGED
@@ -13,4 +13,19 @@
|
|
13
13
|
),',')
|
14
14
|
;
|
15
15
|
|
16
|
+
```
|
17
|
+
|
18
|
+
複数行対応版も作成しました
|
19
|
+
```sql
|
20
|
+
select
|
21
|
+
( select array_to_string(array(select substr(f1,strpos(f1,': ')+2)
|
22
|
+
from (select unnest(string_to_array(fld1,',')) f1) t1 where f1 like 'BBB:%'),',')
|
23
|
+
)
|
24
|
+
from table_a where fld1 like '%BBB:%';
|
25
|
+
|
26
|
+
array_to_string
|
27
|
+
-----------------
|
28
|
+
bbb1,bbb2
|
29
|
+
bbb1
|
30
|
+
(2 rows)
|
16
31
|
```
|