날짜 및 시간 함수는 DATE
와 DATETIME
을 기반으로 데이터를 조작합니다.
함수 | 예제 | 설명 | 구문 |
---|---|---|---|
CONVERT_TZ | CONVERT_TZ(Order Date, 'UTC', 'America/Denver') |
날짜/시간 값 expr 을 Old time zone 에 지정된 시간대에서 New time zone 에 지정된 시간대로 변환하고 결과 값을 반환합니다. |
CONVERT_TZ(expr, 'Old time zone', 'New time zone') |
CURRENT_Date |
|
현재 날짜를 반환합니다. 날짜는 Oracle BI를 실행하는 시스템에 의해 결정됩니다. |
|
CURRENT_TIME |
|
지정된 전체 자릿수에 따라 현재 시간을 반환합니다. 예: HH:MM:SS.SSS 인수를 지정하지 않으면 이 함수가 기본 전체 자릿수를 반환합니다. |
|
CURRENT_TIMESTAMP |
|
지정된 전체 자릿수에 따라 현재 날짜/시간 기록을 반환합니다. |
|
DAYNAME |
|
지정된 날짜 표현식에 대해 요일 이름을 반환합니다. |
|
DAYOFMONTH |
|
지정된 날짜 표현식에 대해 월의 일에 해당하는 숫자를 반환합니다. |
|
DAYOFWEEK |
|
지정된 날짜 표현식에 대해 1~7까지 요일에 해당하는 숫자를 반환합니다. 예를 들어, 1은 일요일을 나타내고, 2는 월요일을 나타내며, 7은 토요일을 나타냅니다. |
|
DAYOFYEAR |
|
지정된 날짜 표현식에 대해 1~366까지 연도 중 일에 해당하는 숫자를 반환합니다. |
|
DAY_OF_QUARTER |
|
지정된 날짜 표현식에 대해 1~92까지 분기 중 일에 해당하는 숫자를 반환합니다. |
|
HOUR |
|
지정된 시간 표현식에 대해 0~23까지 시간에 해당하는 숫자를 반환합니다. 예를 들어, 0은 오전 12시에 해당하고, 23은 오후 11시에 해당합니다. |
|
MINUTE |
|
지정된 시간 표현식에 대해 0~59까지 분에 해당하는 숫자를 반환합니다. |
|
MONTH |
|
지정된 날짜 표현식에 대해 1~12까지 월에 해당하는 숫자를 반환합니다. |
|
MONTHNAME |
|
지정된 날짜 표현식에 대해 월의 이름을 반환합니다. |
|
MONTH_OF_QUARTER |
|
지정된 날짜 표현식에 대해 1~3까지 분기 중 월에 해당하는 숫자를 반환합니다. |
|
NOW |
|
현재 시간 기록을 반환합니다. |
|
QUARTER_OF_YEAR |
|
지정된 날짜 표현식에 대해 1~4까지 연도 중 분기에 해당하는 숫자를 반환합니다. |
|
SECOND |
|
지정된 시간 표현식에 대해 0~59까지 초에 해당하는 숫자를 반환합니다. |
|
TIMESTAMPADD |
|
지정된 간격 수를 시간 기록에 추가하고 단일 시간 기록을 반환합니다. 간격 옵션: SQL_TSI_SECOND, SQL_TSI_MINUTE, SQL_TSI_HOUR, SQL_TSI_DAY, SQL_TSI_WEEK, SQL_TSI_MONTH, SQL_TSI_QUARTER, SQL_TSI_YEAR |
|
TIMESTAMPDIFF |
|
두 시간 기록 사이의 지정된 총 간격 수를 반환합니다. TIMESTAMPADD와 동일한 간격을 사용합니다. |
|
WEEK_OF_QUARTER |
|
지정된 날짜 표현식에 대해 1~13까지 분기 중 주에 해당하는 숫자를 반환합니다. |
|
WEEK_OF_YEAR |
|
지정된 날짜 표현식에 대해 1~53까지 연도 중 주에 해당하는 숫자를 반환합니다. |
|
YEAR |
|
지정된 날짜 표현식의 연도를 반환합니다. |
|
다음은 워크북에서 날짜 함수를 사용하여 회계 기간을 계산하고, 문자열을 날짜로 변환하고, 특정 시간대의 날짜/시간을 표시하고, 시간에 따른 차이를 계산할 때 최상의 결과를 얻기 위한 몇 가지 팁입니다.
회계 연도, 분기, 월 계산:
주제 영역은 일반적으로 시간 차원을 가지므로 회계 분기, 회계 월, 회계 주 등 미리 구성된 기간을 사용할 수 있습니다. 날짜 필드만 있는 경우 날짜 함수를 사용하여 이 기간을 스스로 계산할 수 있습니다.
이 예제는 회계 분기를 계산합니다.
'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')
문자열을 날짜로 변환:
파란색 열 이름이 포함된 텍스트 상자에서 열 이름 앞에 To_DateTime(
를 삽입하고, 열 이름 뒤에 사용할 날짜 형식을 추가하고, 이어서 )
를 삽입한 다음, 단계 추가를 누릅니다.
.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를 사용할 수 있습니다.