やりたいこと
「2年3ヶ月」を、ISO 8601のP2Y3M
のような形式にしたい。
結論
postgres=# select to_char(interval '2 year 3 month', 'PYY"Y"MM"M"');
to_char
---------
P02Y03M
(1 行)
Java側ではこうします。 02
や03
になってても大丈夫みたいです。
java.sql.ResultSet rs = ...;
String value = rs.getString("列名"); // "P02Y03M"のような文字列
java.time.Period period = Period.parse(value);