我需要将DiffTime
库中的time
存储在数据库(PostgreSQL)中,并且有三个选项可以转换为数据库类型:
fromIntegral . fromEnum
toRational
realToFrac
整数是精确的,但相当大,因为存储在皮秒(10 ^ 12)。数字也是精确的,但计算Rational
可能非常昂贵,因为它必须为分子和分母计算gcd
。真实是不准确的,但也许这无关紧要。
我的时间粒度绝不会低于几分钟或大于几天。我需要做出精确的计算。速度可能不是问题。
我应该选择哪个选项以及含义是什么?在处理用户提交的数字时,一般应该避免Rational,如scientific
库中所解释的那样吗?