Postgresql 氏名フィールドに半角全角の混じった空白スペースを挟む場合の「氏」「名」分割方法
こんなテーブルがあり
name | namef ----------+-------------- 田中 一郎 |タナカ イチロウ ----------+-------------- 鈴木 幸子 |スズキ サチコ
こんなSQLで
select split_part(replace(name, ' ',' '),' ',1) first_name, split_part(replace(name, ' ',' '),' ',2) last_name , split_part(replace(namef, ' ',' '),' ',1) first_namef, split_part(replace(namef, ' ',' '),' ',2) last_namef from users;
結果、こうなります
first_name|last_name|first_namef|last_namef ----------+---------+-----------+---------- 田中 |一郎 |タナカ |イチロウ ----------+---------+-----------+---------- 鈴木 |幸子 |スズキ |サチコ