DateAdd, DateDiff 및 TimeZoneOffset 함수
함수 | 적용 대상 |
---|---|
날짜 추가 | 캔버스 앱 Dataverse 수식 열 바탕 화면 흐름 모델 기반 앱 Power Platform CLI |
날짜 차이 | 캔버스 앱 Dataverse 수식 열 바탕 화면 흐름 모델 기반 앱 Power Platform CLI |
시간대 오프셋 | 캔버스 앱 바탕 화면 흐름 모델 기반 앱 Power Platform CLI |
날짜/시간 값의 차이를 추가하거나 찾아서 현지 시간과 UTC 사이의 변환을 수행합니다.
설명
DateAdd 함수는 날짜/시간 값에 단위 수를 추가합니다. 결과는 새 날짜/시간 값입니다. 음수 값을 지정하여 날짜/시간 값에서 단위 수를 뺄 수도 있습니다.
DateDiff 함수는 두 날짜/시간 값의 차이를 반환합니다. 결과는 정수 단위입니다.
두 함수 모두 TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Days, TimeUnit.Months, TimeUnit.Quarters 또는 TimeUnit.Years 단위를 사용할 수 있습니다. 기본적으로 두 함수 모두 TimeUnit.Days를 단위로 사용합니다.
TimeZoneOffset 함수는 사용자의 현지 시간과 UTC(협정 세계시) 사이의 시간을 분 단위로 반환합니다.
DateAdd 및 TimeZoneOffset을 사용하면 사용자의 현지 시간과 UTC(협정 세계시) 사이에서 변환이 가능합니다. TimeZoneOffset을 추가하면 현지 시간이 UTC로 변환되고 빼면(음수를 추가)하면 UTC에서 현지 시간으로 변환됩니다.
자세한 내용은 Date, Time 및 DateTime 데이터 형식 및 날짜 및 시간 작업을 참조하십시오.
구문
DateAdd( DateTime, Addition [, Units ] )
- DateTime - 필수. 연산을 수행할 날짜/시간 값입니다.
- 추가 - 필수. DateTime에 추가할 Units에 해당하는 숫자입니다.
- 단위 - 선택 사항. 추가할 단위 유형: TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Days, TimeUnit.Months, TimeUnit.Quarters 또는 TimeUnit.Years. 지정하지 않으면 TimeUnit.Days가 사용됩니다.
DateDiff( StartDateTime, EndDateTime [, 단위 ] )
- StartDateTime - 필수. 시작 날짜/시간 값입니다.
- EndDateTime - 필수입니다. 종료 날짜/시간 값입니다.
- 단위 - 선택 사항. 제거할 단위 유형: TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Days, TimeUnit.Months, TimeUnit.Quarters 또는 TimeUnit.Years. 지정하지 않으면 TimeUnit.Days가 사용됩니다.
시간대 오프셋( [ 날짜시간 ] )
- DateTime - 선택 사항. 오프셋을 반환할 날짜/시간 값입니다. 기본적으로 현재 날짜/시간이 사용됩니다.
예제
이 모든 예에서 현재 날짜와 시간이 July 15, 2013, 1:02 PM이라고 가정합니다.
간단한 DateAdd
수식 | 설명 | 결과 |
---|---|---|
텍스트( DateAdd( Now(), 3 ), "dd-mm-yyyy hh:mm" ) |
현재 날짜 및 시간에 3일(기본 단위)을 추가합니다. | "18-07-2013 13:02" |
텍스트( DateAdd( Now(), 4, TimeUnit.Hours ), "dd-mm-yyyy hh:mm" ) |
현재 날짜 및 시간에 4시간을 추가합니다. | "15-07-2013 17:02" |
Text( DateAdd( 오늘(), 1, TimeUnit.Months ), "dd-mm-yyyy hh:mm" ) |
현재 날짜에 시간 없이 한 달을 추가합니다. Today는 시간 구성 요소를 반환하지 않기 때문입니다. | "15-08-2013 00:00" |
텍스트( DateAdd( Now(), ‑30, TimeUnit.Minutes ), "dd-mm-yyyy hh:mm" ) |
현재 날짜 및 시간에서 30분을 뺍니다. | "15-07-2013 12:32" |
간단한 DateDiff
수식 | 설명 | 결과 |
---|---|---|
DateDiff( Now(), DateValue("1/1/2014") ) | 두 단위의 차이를 기본 단위인 TimeUnit.Days로 반환합니다 | 170 |
DateDiff( Now(), DateValue("1/1/2014"), TimeUnit.Months ) | 두 값의 차이를 TimeUnit.Months 단위로 반환합니다 | 6 |
DateDiff(지금(), 오늘(), 시간단위.분) | 현재 날짜/시간과 현재 날짜(시간 없음) 사이의 차이를 분 단위로 반환합니다. Now는 Today보다 늦기 때문에 결과는 음수가 됩니다. | -782 |
분수 결과가 있는 날짜의 차이
DateDiff 함수는 뺄 단위의 정수만 반환하며 정밀도는 지정된 단위로 제공됩니다. 더 높은 정밀도로 차이를 계산하려면 아래 예제와 같이 더 작은 단위를 사용하고 결과를 적절하게 변환하십시오.
수식 | 설명 | 결과 |
---|---|---|
DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Hours ) | 분/초는 무시되며 차이는 최대 시간을 기준으로 합니다. | 1 |
DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Minutes )/60 | 분은 차이에 사용되며 결과를 60으로 나누어 시간 차이를 갖습니다. | 0.5 |
DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Seconds )/3600 | 분과 초는 차이에 사용되며 결과를 3600으로 나누어 시간 차이를 갖습니다. | 0.51 |
UTC로 변환
UTC(협정 세계시)로 변환하려면 주어진 시간에 대한 TimeZoneOffset을 추가합니다.
예를 들어 현재 날짜 및 시간이 PDT(태평양 일광 절약 시간), UTC-7 기준 July 15, 2013, 1:02 PM이라고 가정하겠습니다. UTC 기준 현재 시간을 확인하려면 다음을 사용하십시오.
- DateAdd( Now(), TimeZoneOffset(), TimeUnit.Minutes )
TimeZoneOffset 은 기본적으로 현재 시간을 사용하므로 인수를 전달할 필요가 없습니다.
결과를 보기 위해 dd-mm-yyyy hh:mm 형식으로 Text 함수를 사용하면 15-07-2013 20:02가 반환됩니다.
UTC에서 변환
UTC에서 변환하려면 주어진 시간에서 TimeZoneOffset을 뺍니다(음수를 더합니다).
예를 들어 UTC 날짜 및 시간인 July 15, 2013, 8:02 PM이 StartTime이라는 변수에 저장되어 있다고 가정하겠습니다. 사용자의 표준 시간대를 조정하려면 다음을 사용합니다.
- DateAdd(시작시간, −TimeZoneOffset(시작시간), 시간단위.분)
오프셋을 추가하지 않고 빼기 위해 TimeZoneOffset 앞에 음수 기호가 있습니다.
결과를 보기 위해 dd-mm-yyyy hh:mm 형식으로 Text 함수를 사용하면 사용자가 태평양 일광 절약 시간대에 있는 경우 15-07-2013 13:02가 반환됩니다.