如何将mysql的TIME类型转换为go的time.Duration
mysql的字段类型TIME
是类似838:59:59
这样的字符串,我希望在go中将它转为time.Duration
以方便使用,大家有什么好办法让它们相互转换?
2021年10月27日17点32分:目前方法更新为:
func (d *Duration) Scan(v interface{}) error {
switch vt := v.(type) {
case []byte:
str := strings.Replace(string(vt), ":", "h", 1)
str = strings.Replace(str, ":", "m", 1) + "s"
pd, err := time.ParseDuration(str)
if err != nil {
return err
}
*d = Duration(pd)
break
default:
return errors.New("类型处理错误")
}
return nil
}
推荐文章: