programing

내 SQL 저장 지속 시간 - 데이터 유형?

mailnote 2023. 10. 28. 08:06
반응형

내 SQL 저장 지속 시간 - 데이터 유형?

사용자가 현장에서 보내는 시간을 계산해야 합니다."X씨가 온라인으로 4시간 43분을 소비했다"는 것은 로그아웃 시간과 로그인 시간의 차이입니다.그래서 4시간 43분을 저장하기 위해 이렇게 선언했습니다.duration시간 NULL이 아님

이것이 유효한 것입니까 아니면 이것을 보관하는 더 나은 방법입니까?다른 계산이 있어서 DB에 저장해야 합니다. + 기타 사용 사례에 사용해야 합니다.

그것을 정수 초 단위로 저장하는 것이 가장 좋은 방법일 것입니다.

  • UPDATE깨끗하고 간단할 것입니다. 즉.duration = duration + $increment
  • Tristram이 언급한 바와 같이, 사용에 제한이 있습니다.TIME현장 - 예를 들어"TIME값의 범위는 다음과 같습니다.'-838:59:59'로.'838:59:59'"
  • 일/시간/분/초 표시 형식은 하드코딩되지 않습니다.
  • 정수 "초수" 필드로 작업할 때 다른 계산의 실행이 거의 확실하게 명확해질 것입니다.

당신이 24시간으로 제한되어 있기 때문에 저는 시간을 사용하지 않을 것입니다.가장 쉬운 방법은 정수를 분(또는 필요한 해상도에 따라 초) 단위로 저장하는 것입니다.

두 값을 모두 UNIX-epoch-delta로 저장하는 것을 고려합니다.

저는 일반적으로 서명된 (64b) 비긴트 (2차 해결을 위해) 또는 (서명된) 더블 (분수초가 필요한 경우) 또는 서명된 (32b) 인트 (분수초로 축소된 경우)를 사용하는 것을 선호합니다.

열 이름에 단위를 명시적으로 표시합니다. 예를 들어 "_epoch_minutely"와 같은 접미사를 사용하여 "started_epoch_minutely", "finished_epoch_minute"와 같이 명시적으로 표시합니다.

언급URL : https://stackoverflow.com/questions/4498513/mysql-storing-duration-time-datatype

반응형