날짜 및 시간 함수

날짜 및 시간 함수는 DATEDATETIME을 기반으로 데이터를 조작합니다.

함수 예제 설명 구문
CONVERT_TZ CONVERT_TZ(Order Date, 'UTC', 'America/Denver') 날짜/시간 값 exprOld time zone에 지정된 시간대에서 New time zone에 지정된 시간대로 변환하고 결과 값을 반환합니다. CONVERT_TZ(expr, 'Old time zone', 'New time zone')

CURRENT_Date

CURRENT_DATE

현재 날짜를 반환합니다.

날짜는 Oracle BI를 실행하는 시스템에 의해 결정됩니다.

CURRENT_DATE

CURRENT_TIME

CURRENT_TIME(3)

지정된 전체 자릿수에 따라 현재 시간을 반환합니다. 예: HH:MM:SS.SSS

인수를 지정하지 않으면 이 함수가 기본 전체 자릿수를 반환합니다.

CURRENT_TIME(expr)

CURRENT_TIMESTAMP

CURRENT_TIMESTAMP(3)

지정된 전체 자릿수에 따라 현재 날짜/시간 기록을 반환합니다.

CURRENT_TIMESTAMP(expr)

DAYNAME

DAYNAME(Order_Date)

지정된 날짜 표현식에 대해 요일 이름을 반환합니다.

DAYNAME(expr)

DAYOFMONTH

DAYOFMONTH(Order_Date)

지정된 날짜 표현식에 대해 월의 일에 해당하는 숫자를 반환합니다.

DAYOFMONTH(expr)

DAYOFWEEK

DAYOFWEEK(Order_Date)

지정된 날짜 표현식에 대해 1~7까지 요일에 해당하는 숫자를 반환합니다. 예를 들어, 1은 일요일을 나타내고, 2는 월요일을 나타내며, 7은 토요일을 나타냅니다.

DAYOFWEEK(expr)

DAYOFYEAR

DAYOFYEAR(Order_Date)

지정된 날짜 표현식에 대해 1~366까지 연도 중 일에 해당하는 숫자를 반환합니다.

DAYOFYEAR(expr)

DAY_OF_QUARTER

DAY_OF_QUARTER(Order_Date)

지정된 날짜 표현식에 대해 1~92까지 분기 중 일에 해당하는 숫자를 반환합니다.

DAY_OF_QUARTER(expr)

HOUR

HOUR(Order_Time)

지정된 시간 표현식에 대해 0~23까지 시간에 해당하는 숫자를 반환합니다. 예를 들어, 0은 오전 12시에 해당하고, 23은 오후 11시에 해당합니다.

HOUR(expr)

MINUTE

MINUTE(Order_Time)

지정된 시간 표현식에 대해 0~59까지 분에 해당하는 숫자를 반환합니다.

MINUTE(expr)

MONTH

MONTH(Order_Time)

지정된 날짜 표현식에 대해 1~12까지 월에 해당하는 숫자를 반환합니다.

MONTH(expr)

MONTHNAME

MONTHNAME(Order_Time)

지정된 날짜 표현식에 대해 월의 이름을 반환합니다.

MONTHNAME(expr)

MONTH_OF_QUARTER

MONTH_OF_QUARTER(Order_Date)

지정된 날짜 표현식에 대해 1~3까지 분기 중 월에 해당하는 숫자를 반환합니다.

MONTH_OF_QUARTER(expr)

NOW

NOW()

현재 시간 기록을 반환합니다. NOW 함수는 CURRENT_TIMESTAMP 함수와 동일합니다.

NOW()

QUARTER_OF_YEAR

QUARTER_OF_YEAR(Order_Date)

지정된 날짜 표현식에 대해 1~4까지 연도 중 분기에 해당하는 숫자를 반환합니다.

QUARTER_OF_YEAR(expr)

SECOND

SECOND(Order_Time)

지정된 시간 표현식에 대해 0~59까지 초에 해당하는 숫자를 반환합니다.

SECOND(expr)

TIMESTAMPADD

TIMESTAMPADD(SQL_TSI_MONTH, 12,Time."Order Date")

지정된 간격 수를 시간 기록에 추가하고 단일 시간 기록을 반환합니다.

간격 옵션: SQL_TSI_SECOND, SQL_TSI_MINUTE, SQL_TSI_HOUR, SQL_TSI_DAY, SQL_TSI_WEEK, SQL_TSI_MONTH, SQL_TSI_QUARTER, SQL_TSI_YEAR

TIMESTAMPADD(interval, expr, timestamp)

TIMESTAMPDIFF

TIMESTAMPDIFF(SQL_TSI_MONTH, Time."Order Date",CURRENT_DATE)

두 시간 기록 사이의 지정된 총 간격 수를 반환합니다.

TIMESTAMPADD와 동일한 간격을 사용합니다.

TIMESTAMPDIFF(interval, expr, timestamp2)

WEEK_OF_QUARTER

WEEK_OF_QUARTER(Order_Date)

지정된 날짜 표현식에 대해 1~13까지 분기 중 주에 해당하는 숫자를 반환합니다.

WEEK_OF_QUARTER(expr)

WEEK_OF_YEAR

WEEK_OF_YEAR(Order_Date)

지정된 날짜 표현식에 대해 1~53까지 연도 중 주에 해당하는 숫자를 반환합니다.

WEEK_OF_YEAR(expr)

YEAR

YEAR(Order_Date)

지정된 날짜 표현식의 연도를 반환합니다.

YEAR(expr)

날짜 함수 사용에 관한 팁

다음은 워크북에서 날짜 함수를 사용하여 회계 기간을 계산하고, 문자열을 날짜로 변환하고, 특정 시간대의 날짜/시간을 표시하고, 시간에 따른 차이를 계산할 때 최상의 결과를 얻기 위한 몇 가지 팁입니다.

회계 연도, 분기, 월 계산:

주제 영역은 일반적으로 시간 차원을 가지므로 회계 분기, 회계 월, 회계 주 등 미리 구성된 기간을 사용할 수 있습니다. 날짜 필드만 있는 경우 날짜 함수를 사용하여 이 기간을 스스로 계산할 수 있습니다.

이 예제는 회계 분기를 계산합니다.

'FY'||cast(YEAR(TIMESTAMPADD(SQL_TSI_MONTH, 7,<date field>)) as char)||'Q'||cast(QUARTER(TIMESTAMPADD(SQL_TSI_MONTH, 7,<same date field>)) as char)

이 예제는 회계 연도와 월을 계산합니다.

'FY'||cast(YEAR(TIMESTAMPADD(SQL_TSI_MONTH, 7,<date field>)) as char)||cast(MONTHNAME(<same date field>) as char)

참고:

  • || - 값을 연결합니다.
  • cast (xxx(date) as char) - 날짜 필드의 일부를 추출합니다.
  • TIMESTAMPADD - 날짜에서 기간을 더하거나 뺍니다. 이 예제는 매개변수 값 SQL_TSI_MONTH를 사용하여 월을 추가합니다.

위의 계산은 테이블에서 잘 작동하지만 필터에 사용될 때 반환 값 사이의 간격이 이상해 보일 수 있습니다. 이 경우 다음 예제와 같이 깔끔하지만 더 복잡한 계산을 사용하십시오.

'FY'||evaluate ('to_char(%1,%2)'as char,(EVALUATE('add_months(%1,%2)' as date,<date field>,7)),'YY')||'-Q'||evaluate ('to_char(%1,%2)'as char,(EVALUATE('add_months(%1,%2)' as date,<same date field>,7)),'Q')
'FY'||evaluate ('to_char(%1,%2)'as char,(EVALUATE('add_months(%1,%2)' as date,<date field>,7)),'YY')||'-'||evaluate ('to_char(%1,%2)'as char,<same date field>,'MON')

문자열을 날짜로 변환:

Oracle Analytics는 데이터를 프로파일링하여 날짜 추출 및 변환을 위한 강화 권장사항을 제공합니다. 스스로 문자열을 날짜로 변환해야 하는 경우 다음 팁을 사용하십시오.
  • 워크북 디자이너의 데이터 창에서 변환할 열로 이동하여 마우스 오른쪽 단추를 누르고 날짜로 변환을 선택합니다. 날짜를 구성하고 단계 추가를 누릅니다.

  • 워크북 디자이너의 데이터 창에서 변환할 열로 이동하여 마우스 오른쪽 단추를 누르고 편집을 선택합니다. 날짜를 구성하고 단계 추가를 누릅니다.

    파란색 열 이름이 포함된 텍스트 상자에서 열 이름 앞에 To_DateTime(를 삽입하고, 열 이름 뒤에 사용할 날짜 형식을 추가하고, 이어서 )를 삽입한 다음, 단계 추가를 누릅니다.
    GUID-ADBD035B-A62A-4DED-8768-553365BAABFE-default.png에 대한 설명이 이어집니다.
    .png''

    편집 옵션을 사용하여 날짜 변환 함수를 생성할 때 Allow_Variable_Digits를 사용하여 1자리 또는 2자리 숫자로 열 값을 처리하고, Null_On_Error 인수를 사용하여 필요한 패턴과 일치하지 않는 행을 버릴 수도 있습니다. 필요한 패턴과 일치하지 않는 데이터를 처리하는 대체 방법으로 REPLACE 및 CAST도 참조하십시오.

    To_DateTime() 사용의 대안으로, CAST()를 사용하여 값의 데이터 유형을 변경합니다. 예를 들어 CAST(SalesDate AS DATE)입니다.

    추가로 바꾸기 옵션을 사용합니다. 워크북 디자이너의 데이터 창에서 변환할 열로 이동하여 마우스 오른쪽 단추를 누르고 바꾸기를 선택합니다. 원하는 바꾸기 유형을 구성하고 단계 추가를 누릅니다.

특정 시간대의 날짜/시간 필드 표시:

EVALUATE와 함께 데이터베이스의 NEW_TIME 함수를 사용합니다. 예를 들면 다음과 같습니다.

evaluate ('new_time(%1,%2,%3)' as char, "DV - Pipeline and Forecast"."Opportunity"."Last Updated Date",'GMT','AST')

날짜 필드에 시간 구성요소가 포함되는지 확인합니다.

시간에 따른 차이 계산:

현재와 어제 사이의 숫자 및 백분율 차이를 표시하려면 다음 예제와 같이 계산을 생성합니다.
  • 어제까지 측정항목 계산: filter (Measure using date <= TIMESTAMPADD(SQL_TSI_DAY,-1,CURRENT_DATE))
  • 차이 계산: Measure - filter (Measure using date <= TIMESTAMPADD(SQL_TSI_DAY,-1,CURRENT_DATE))
  • 백분율 차이 계산: 1-(filter (Measure using date <= TIMESTAMPADD(SQL_TSI_DAY,-1,CURRENT_DATE))/Measure display as percentage

참고:

  • 이 예제는 SQL_TSI_DAY를 사용하지만, 대안으로 주 단위로 WEEK와 월 단위로 MONTH를 사용할 수 있습니다.
  • 이 예제는 일반 달력이나 자연 달력과 작동합니다. 회계 월과 분기가 필요한 경우 TIMESTAMPADD 대신 저장소 변수를 계산에 사용하십시오. 대안으로 이를 회계 연도, 분기, 월 계산 팁과 결합합니다.
  • 일부 주제 영역에는 PY(전년도), PQ(전분기)와 같이 미리 계산된 Prior X 측정항목이 포함되어 이를 사용하여 시간에 따른 차이를 계산할 수 있습니다.
  • 대안으로 TIME SERIES 함수인 AGO, PERIODROLLING, TODATE를 사용할 수 있습니다. 시계열 함수을(를) 참조하십시오.