# Date#스크립트 및 차트 함수

Date#는 두 번째 인수(지정된 경우)로 지정한 서식을 사용하여 표현식을 날짜로 평가합니다.

구문:

Date#(text[, format])

반환 데이터 유형: 이중

인수

| 인수 | 설명 |
| --- | --- |
| text | 평가할 텍스트 문자열입니다. |
| format | 텍스트 문자열을 해석하는 데 사용해야 하는 형식을 설명하는 문자열. 생략하면 데이터 로드 스크립트의 시스템 변수 또는 운영 체제에 설정된 날짜 서식이 사용됩니다.<br><br>`Date#` 함수는 다음과 같이 다양한 날짜 구조에 대한 많은 형식 옵션을 지원합니다.<br><br>​`DD/MM/YYYY`: ​일/월/년(예: 15/02/2022)<br><br>​`MM-DD-YYYY`: ​월-일-년, 하이픈 사용(예: 02-15-2022)<br><br>​`YYYY-MM-DD`: ​년-월-일, ISO 형식(예: 2022-02-15)<br><br>​`D-MMM-YYYY`: ​일-짧은 월 이름-년, 하이픈 사용(예: 15-Feb-2022)<br><br>`​MMMM YYYY`: ​긴 월 이름 및 연도(예: February 2022)<br><br>​`MM/YYYY`: ​월 및 연도(예: 02/2022)<br><br>​`DD MMMM YYYY`: ​일, 긴 월 이름 및 연도(예: 15 February 2022)<br><br>[숫자 및 시간 형식에 대한 설명](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Introduction/conventions-number-time-formats.htm) |

예: 차트 표현식

| 예제 | 결과 |
| --- | --- |
| ` Date#('8/7/97')  ` | `DateFormat` 설정이 `M/D/YY.`인 경우 유효한 날짜 `8/7/97`를 반환합니다. |
| `Date#('21.10.2023', 'DD.MM.YYYY' )` | 날짜 설정이 `DD.MM.YYYY`인 경우 유효한 날짜 `21.10.2023`을 반환합니다. |
| `Date#('21.10.2023')` | `DateFormat` 설정이 `M/D/YY`인 경우 `NULL`을 반환합니다. |

## 예 - Date# 기본 사항

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/InterpretationFunctions/date_hash.htm)

#### 로드 스크립트

개요

데이터 로드 편집기를 열고 새 섹션에 아래 로드 스크립트를 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* `Example`이라는 데이터 테이블에 로드되는 데이터 집합입니다.

* 데이터 테이블의 다음 필드:

  * `StringDate`

* `M/D/YY` 형식을 사용하는 `DateFormat` 변수.

* `Date`라는 새 필드를 만드는 선행 LOAD. `Date#` 및 `Num` 함수는 문자열을 날짜로 변환한 다음 값을 숫자로 반환하는 데 사용됩니다.

로드 스크립트

```
SET DateFormat='M/D/YY';
Example:
Load *,
Num(Date#(StringDate, 'D/M/YYYY')) as Date
;
LOAD * INLINE [
StringDate
13/12/2024
31/1/23
];
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* ` StringDate
                                       `

* `Date`

다음 측정값을 만듭니다.

* `=Date(Date)`: 로드 스크립트의 날짜 서식 변수를 사용하여 형식이 지정된 날짜로 값을 봅니다.

* `=IsNum(StringDate)`: 필드 값의 날짜 서식이 시스템 설정과 일치하지 않기 때문에 값이 문자열이고 날짜로 평가되지 않는지 확인합니다.

Results table

| StringDate | Date | Date(Date) | IsNum(StringDate) |
| --- | --- | --- | --- |
| 13/12/2024 | 45639 | 12/13/24 | 0 |
| 31/1/23 | 44957 | 1/31/23 | 0 |

결과는 선행 LOAD에서 만들어진 열 2의 `Date` 필드가 `StringDate` 값을 숫자로 표현된 날짜로 변환했음을 보여 줍니다. 열 3의 `Date` 형식 함수는 `Date` 값을 날짜로 인식하고 로드 스크립트의 `DateFormat` 변수에 따라 형식을 지정합니다.

## 예 - Date# 시나리오

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/InterpretationFunctions/date_hash.htm)

#### 로드 스크립트

개요

데이터 로드 편집기를 열고 새 섹션에 아래 로드 스크립트를 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* `Example`이라는 데이터 테이블에 로드되는 데이터 집합입니다.

* 데이터 테이블의 필드는 다음과 같습니다.

  * `Customer`
  * `BirthDate`

* `ParsedBirthDate`라는 새 필드를 만드는 선행 LOAD.

로드 스크립트

```
Example:
Load *,
Date#(BirthDate, 'MM.DD.YYYY') as ParsedBirthDate;
Load * inline [
Customer, BirthDate
Customer A, 08.25.2022
Customer B, 08.25.2022
Customer C, 08.25.2022
];
```

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* ` Customer
                                       `

* `BirthDate`

* `ParsedBirthDate`

다음 측정값을 만듭니다.

* `=Date(ParsedBirthDate,'DD/MM/YYYY')`: 값을 형식화된 날짜로 봅니다.

Results table

| Customer | BirthDate | ParsedBirthDate | Date(ParsedBirthDate, 'DD/MM/YYYY') |
| --- | --- | --- | --- |
| Customer A | 08.25.2022 | 08.25.2022 | 25/08/2022 |
| Customer B | 06.29.2022 | 06.29.2022 | 29/06/2022 |
| Customer C | 05.31.2022 | 05.31.2022 | 31/05/2022 |

이 예에서 우리는 열 2의 `BirthDate` 필드가 시스템에 의해 텍스트로 처리되는 것을 볼 수 있습니다. 선행 LOAD에서 사용된 `Date#` 함수는 `BirthDate`를 열 3, `ParsedBirthDate`의 인식 가능한 날짜로 변환합니다. 4열의 `Date` 형식 함수는 `ParsedBirthDate` 값을 `DD/MM/YYYY` 형식으로 표시할 수 있습니다.