code: func (t Time) ConvertToDuration() (Duration, error) {
  	if t.IsZero() {
  		return ZeroDuration, nil
  	}
  
  	hour, minute, second := t.Clock()
  	frac := t.Time.Microsecond() * 1000
  
  	d := gotime.Duration(hour*3600+minute*60+second)*gotime.Second + gotime.Duration(frac)
  	// TODO: check convert validation
  	return Duration{Duration: d, Fsp: t.Fsp}, nil
  }
docs: // ConvertToDuration converts mysql datetime, timestamp and date to mysql time type.
  // e.g,
  // 2012-12-12T10:10:10 -> 10:10:10
  // 2012-12-12 -> 0