By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
Help with an interesting Postgres question: Why isn't an Index Only Scan used on a partition accessed via the parent table?.
create table it020405 (
iname text
, isex char(1)
, itel text
, iaddr text
, ino text
);
insert into it020405 values
('王明明','男','0985124793','新北市','X200-35-02,R205-10-65'),
('陳咚咚','男','0945137685','高雄市','X203-35-02'),
('李亮亮','女','0946825103','新竹市','X405-45-02,L210-11-07,R305-97-15'),
('吳花花','女','0978456285','台北市','X200-35-02'),
('沈芊芊','女','0956721854','基隆市','R205-10-69');
select *
from it020405;
5 rows affected
iname | isex | itel | iaddr | ino |
---|---|---|---|---|
王明明 | 男 | 0985124793 | 新北市 | X200-35-02,R205-10-65 |
陳咚咚 | 男 | 0945137685 | 高雄市 | X203-35-02 |
李亮亮 | 女 | 0946825103 | 新竹市 | X405-45-02,L210-11-07,R305-97-15 |
吳花花 | 女 | 0978456285 | 台北市 | X200-35-02 |
沈芊芊 | 女 | 0956721854 | 基隆市 | R205-10-69 |
select iname, isex, itel, iaddr
, split_part(sno, '-', 1) as ino1
, split_part(sno, '-', 2) as ino2
, split_part(sno, '-', 3) as ino3
from (select iname, isex, itel, iaddr
, string_to_table(ino, ',') as sno
from it020405
) a;
iname | isex | itel | iaddr | ino1 | ino2 | ino3 |
---|---|---|---|---|---|---|
王明明 | 男 | 0985124793 | 新北市 | X200 | 35 | 02 |
王明明 | 男 | 0985124793 | 新北市 | R205 | 10 | 65 |
陳咚咚 | 男 | 0945137685 | 高雄市 | X203 | 35 | 02 |
李亮亮 | 女 | 0946825103 | 新竹市 | X405 | 45 | 02 |
李亮亮 | 女 | 0946825103 | 新竹市 | L210 | 11 | 07 |
李亮亮 | 女 | 0946825103 | 新竹市 | R305 | 97 | 15 |
吳花花 | 女 | 0978456285 | 台北市 | X200 | 35 | 02 |
沈芊芊 | 女 | 0956721854 | 基隆市 | R205 | 10 | 69 |
select iname, isex, itel, iaddr
, split_part(sno, '-', 1) as ino1
, split_part(sno, '-', 2) as ino2
, split_part(sno, '-', 3) as ino3
from (select iname, isex, itel, iaddr
, unnest(string_to_array(ino, ',')) as sno
from it020405
) a;
iname | isex | itel | iaddr | ino1 | ino2 | ino3 |
---|---|---|---|---|---|---|
王明明 | 男 | 0985124793 | 新北市 | X200 | 35 | 02 |
王明明 | 男 | 0985124793 | 新北市 | R205 | 10 | 65 |
陳咚咚 | 男 | 0945137685 | 高雄市 | X203 | 35 | 02 |
李亮亮 | 女 | 0946825103 | 新竹市 | X405 | 45 | 02 |
李亮亮 | 女 | 0946825103 | 新竹市 | L210 | 11 | 07 |
李亮亮 | 女 | 0946825103 | 新竹市 | R305 | 97 | 15 |
吳花花 | 女 | 0978456285 | 台北市 | X200 | 35 | 02 |
沈芊芊 | 女 | 0956721854 | 基隆市 | R205 | 10 | 69 |