

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon QLDB의 PartiQL 함수
<a name="ql-functions"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB의 PartiQL은 SQL 표준 함수의 다음과 같은 기본 제공 변형을 지원합니다.

**참고**  
이 목록에 포함되지 않은 SQL 함수는 현재 QLDB에 지원되지 않습니다.  
이 함수 참조는 PartiQL 설명서 [기본 제공 함수](https://github.com/partiql/partiql-lang-kotlin/blob/main/docs/wiki/documentation/Functions.md#built-in-functions)를 기반으로 합니다.

**알 수 없는 타입(null 및 누락) 전파**

달리 명시되지 않는 한, 이러한 함수는 모두 null 및 누락된 인수 값을 전파합니다. `NULL` 또는 `MISSING`의 *전파*는 함수 인수가 `NULL` 또는 `MISSING` 중 하나일 경우 반환하는 `NULL`로 정의됩니다. 다음은 이러한 전파의 예입니다.

```
CHAR_LENGTH(null)    -- null
CHAR_LENGTH(missing) -- null (also returns null)
```

## 집계 함수
<a name="ql-functions.aggregate"></a>
+ [AVG](ql-functions.avg.md)
+ [COUNT](ql-functions.count.md)
+ [MAX](ql-functions.max.md)
+ [MIN](ql-functions.min.md)
+ [SIZE](ql-functions.size.md)
+ [SUM](ql-functions.sum.md)

## 조건 함수
<a name="ql-functions.conditional"></a>
+ [COALESCE](ql-functions.coalesce.md)
+ [exists](ql-functions.exists.md)
+ [nullIF](ql-functions.nullif.md)

## 날짜 및 시간 함수
<a name="ql-functions.date"></a>
+ [DATE\$1ADD](ql-functions.date_add.md)
+ [DATE\$1DIFF](ql-functions.date_diff.md)
+ [EXTRACT](ql-functions.extract.md)
+ [UTCNOW](ql-functions.utcnow.md)

## 스칼라 함수
<a name="ql-functions.scalar"></a>
+ [TXID](ql-functions.txid.md)

## 문자열 함수
<a name="ql-functions.string"></a>
+ [CHAR\$1LENGTH](ql-functions.char_length.md)
+ [CHARACTER\$1LENGTH](ql-functions.character_length.md)
+ [LOWER](ql-functions.lower.md)
+ [SUBSTRING](ql-functions.substring.md)
+ [TRIM](ql-functions.trim.md)
+ [UPPER](ql-functions.upper.md)

## 데이터 형식 지정 함수
<a name="ql-functions.formatting"></a>
+ [CAST](ql-functions.cast.md)
+ [TO\$1STRING](ql-functions.to_string.md)
+ [TO\$1TIMESTAMP](ql-functions.to_timestamp.md)

# Amazon QLDB의 AVG 함수
<a name="ql-functions.avg"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `AVG` 함수를 사용해 입력 표현식 값의 평균(산술 평균)을 반환합니다. 이 함수는 수치를 사용하고 null 또는 누락 값은 무시합니다.

## 구문
<a name="ql-functions.avg.syntax"></a>

```
AVG ( expression )
```

## 인수
<a name="ql-functions.avg.arguments"></a>

*expression*  
함수가 실행되는 숫자 데이터 타입의 필드 명칭 또는 표현식입니다.

## 데이터 타입
<a name="ql-functions.avg.data-types"></a>

지원되는 인수 타입:
+ `int`
+ `decimal`
+ `float`

반환 타입: `decimal`

## 예
<a name="ql-functions.avg.examples"></a>

```
SELECT AVG(r.PendingPenaltyTicketAmount) FROM VehicleRegistration r  -- 147.19
SELECT AVG(a) FROM << { 'a' : 1 }, { 'a': 2 }, { 'a': 3 } >>         -- 2.
```

## 관련 함수
<a name="ql-functions.avg.related"></a>
+ [COUNT](ql-functions.count.md)
+ [MAX](ql-functions.max.md)
+ [MIN](ql-functions.min.md)
+ [SIZE](ql-functions.size.md)
+ [SUM](ql-functions.sum.md)

# Amazon QLDB의 CAST 함수
<a name="ql-functions.cast"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `CAST` 함수를 사용하여 주어진 표현식을 값으로 평가하고 값을 지정된 대상 데이터 타입으로 변환합니다. 변환할 수 없는 경우 함수는 오류를 반환합니다.

## 구문
<a name="ql-functions.cast.syntax"></a>

```
CAST ( expression AS type )
```

## 인수
<a name="ql-functions.cast.arguments"></a>

*expression*  
함수가 변환하는 값으로 평가되는 파일 명칭 또는 표현식입니다. null 값을 변환하면 마찬가지로 null이 반환됩니다. 이 파라미터는 지원되는 [데이터 타입](ql-reference.data-types.md) 중 하나일 수 있습니다.

*타입*  
변환할 대상 데이터 타입의 명칭입니다. 이 파라미터는 지원되는 [데이터 타입](ql-reference.data-types.md) 중 하나일 수 있습니다.

## 반환 타입
<a name="ql-functions.cast.return-type"></a>

*type* 인수에 의해 지정된 데이터 타입.

## 예
<a name="ql-functions.cast.examples"></a>

다음 예는 알 수 없는 타입(`NULL` 또는`MISSING`)의 전파를 보여줍니다.

```
CAST(null    AS null)    -- null 
CAST(missing AS null)    -- null 
CAST(missing AS missing) -- missing
CAST(null    AS missing) -- missing
CAST(null    AS boolean) -- null (null AS any data type name results in null)
CAST(missing AS boolean) -- missing (missing AS any data type name results in missing)
```

알 수 없는 형식이 아닌 값은 `NULL` 또는 `MISSING`로 캐스팅할 수 없습니다.

```
CAST(true AS null)    -- error 
CAST(true AS missing) -- error
CAST(1    AS null)    -- error
CAST(1    AS missing) -- error
```

다음 예는 캐스팅 `AS boolean`을 보여줍니다.

```
CAST(true      AS boolean) -- true no-op
CAST(0         AS boolean) -- false
CAST(1         AS boolean) -- true
CAST(`1e0`     AS boolean) -- true (float)
CAST(`1d0`     AS boolean) -- true (decimal)
CAST('a'       AS boolean) -- false
CAST('true'    AS boolean) -- true (SqlName string 'true')
CAST(`'true'`  AS boolean) -- true (Ion symbol `'true'`)
CAST(`'false'` AS boolean) -- false (Ion symbol `'false'`)
```

다음 예는 캐스팅 `AS integer`을 보여줍니다.

```
CAST(true   AS integer) -- 1
CAST(false  AS integer) -- 0
CAST(1      AS integer) -- 1
CAST(`1d0`  AS integer) -- 1
CAST(`1d3`  AS integer) -- 1000
CAST(1.00   AS integer) -- 1
CAST(1.45   AS integer) -- 1
CAST(1.75   AS integer) -- 1
CAST('12'   AS integer) -- 12
CAST('aa'   AS integer) -- error
CAST(`'22'` AS integer) -- 22
CAST(`'x'`  AS integer) -- error
```

다음 예는 캐스팅 `AS float`을 보여줍니다.

```
CAST(true   AS float) -- 1e0
CAST(false  AS float) -- 0e0
CAST(1      AS float) -- 1e0
CAST(`1d0`  AS float) -- 1e0
CAST(`1d3`  AS float) -- 1000e0
CAST(1.00   AS float) -- 1e0
CAST('12'   AS float) -- 12e0
CAST('aa'   AS float) -- error
CAST(`'22'` AS float) -- 22e0
CAST(`'x'`  AS float) -- error
```

다음 예는 캐스팅 `AS decimal`을 보여줍니다.

```
CAST(true   AS decimal) -- 1.
CAST(false  AS decimal) -- 0.
CAST(1      AS decimal) -- 1.
CAST(`1d0`  AS decimal) -- 1. (REPL printer serialized to 1.)
CAST(`1d3`  AS decimal) -- 1d3
CAST(1.00   AS decimal) -- 1.00
CAST('12'   AS decimal) -- 12.
CAST('aa'   AS decimal) -- error
CAST(`'22'` AS decimal) -- 22.
CAST(`'x'`  AS decimal) -- error
```

다음 예는 캐스팅 `AS timestamp`을 보여줍니다.

```
CAST(`2001T`                      AS timestamp) -- 2001T
CAST('2001-01-01T'                AS timestamp) -- 2001-01-01T
CAST(`'2010-01-01T00:00:00.000Z'` AS timestamp) -- 2010-01-01T00:00:00.000Z
CAST(true                         AS timestamp) -- error
CAST(2001                         AS timestamp) -- error
```

다음 예는 캐스팅 `AS symbol`을 보여줍니다.

```
CAST(`'xx'`                     AS symbol) -- xx (`'xx'` is an Ion symbol)
CAST('xx'                       AS symbol) -- xx ('xx' is a string)
CAST(42                         AS symbol) -- '42'
CAST(`1e0`                      AS symbol) -- '1.0'
CAST(`1d0`                      AS symbol) -- '1'
CAST(true                       AS symbol) -- 'true'
CAST(false                      AS symbol) -- 'false'
CAST(`2001T`                    AS symbol) -- '2001T'
CAST(`2001-01-01T00:00:00.000Z` AS symbol) -- '2001-01-01T00:00:00.000Z'
```

다음 예는 캐스팅 `AS string`을 보여줍니다.

```
CAST(`'xx'`                     AS string) -- "xx" (`'xx'` is an Ion symbol)
CAST('xx'                       AS string) -- "xx" ('xx' is a string)
CAST(42                         AS string) -- "42"
CAST(`1e0`                      AS string) -- "1.0"
CAST(`1d0`                      AS string) -- "1"
CAST(true                       AS string) -- "true"
CAST(false                      AS string) -- "false"
CAST(`2001T`                    AS string) -- "2001T"
CAST(`2001-01-01T00:00:00.000Z` AS string) -- "2001-01-01T00:00:00.000Z"
```

다음 예는 캐스팅 `AS struct`을 보여줍니다.

```
CAST(`{ a: 1 }` AS struct) -- {a:1}
CAST(true       AS struct) -- err
```

다음 예는 캐스팅 `AS list`을 보여줍니다.

```
CAST(`[1, 2, 3]`        AS list) -- [1,2,3]
CAST(<<'a', { 'b':2 }>> AS list) -- ["a",{'b':2}]
CAST({ 'b':2 }          AS list) -- error
```

다음 예는 이전 예 중 일부를 포함하는 실행 가능한 명령문입니다.

```
SELECT CAST(true AS integer) FROM << 0 >>            -- 1
SELECT CAST('2001-01-01T' AS timestamp) FROM << 0 >> -- 2001-01-01T
SELECT CAST('xx' AS symbol) FROM << 0 >>             -- xx
SELECT CAST(42 AS string) FROM << 0 >>               -- "42"
```

## 관련 함수
<a name="ql-functions.cast.related"></a>
+ [TO\$1STRING](ql-functions.to_string.md)
+ [TO\$1TIMESTAMP](ql-functions.to_timestamp.md)

# Amazon QLDB의 CHAR\$1LENGTH 함수
<a name="ql-functions.char_length"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `CHAR_LENGTH` 함수를 사용하여 지정된 문자열의 문자 수를 반환합니다. 여기서 *문자*는 단일 유니코드 코드 포인트로 정의됩니다.

## 구문
<a name="ql-functions.char_length.syntax"></a>

```
CHAR_LENGTH ( string )
```

`CHAR_LENGTH`는 [Amazon QLDB의 CHARACTER\$1LENGTH 함수](ql-functions.character_length.md)의 동의어입니다.

## 인수
<a name="ql-functions.char_length.arguments"></a>

*string*  
함수가 평가하는 데이터 타입 `string`의 필드 명칭 또는 표현식입니다.

## 반환 타입
<a name="ql-functions.char_length.return-type"></a>

`int`

## 예
<a name="ql-functions.char_length.examples"></a>

```
SELECT CHAR_LENGTH('') FROM << 0 >>        -- 0
SELECT CHAR_LENGTH('abcdefg') FROM << 0 >> -- 7
SELECT CHAR_LENGTH('eࠫ') FROM << 0 >>      -- 2 (because 'eࠫ' is two code points: the letter 'e' and combining character U+032B)
```

## 관련 함수
<a name="ql-functions.char_length.related"></a>
+ [LOWER](ql-functions.lower.md)
+ [SUBSTRING](ql-functions.substring.md)
+ [TRIM](ql-functions.trim.md)
+ [UPPER](ql-functions.upper.md)

# Amazon QLDB의 CHARACTER\$1LENGTH 함수
<a name="ql-functions.character_length"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

`CHAR_LENGTH` 함수의 동의어입니다.

[Amazon QLDB의 CHAR\$1LENGTH 함수](ql-functions.char_length.md)을 참조하세요.

# Amazon QLDB의 COALESCE 함수
<a name="ql-functions.coalesce"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서 하나 이상의 인수 목록이 주어지면 `COALESCE` 함수를 사용하여 왼쪽에서 오른쪽 순으로 인수를 평가하고 알 수 없는 타입(`NULL` 또는`MISSING` )이 아닌 첫 번째 값을 반환합니다. 모든 인수 타입을 알 수 없는 경우 결과는 `NULL`입니다.

`COALESCE` 함수는 `NULL` 및 `MISSING`을 전파하지 않습니다.

## 구문
<a name="ql-functions.coalesce.syntax"></a>

```
COALESCE ( expression [, expression, ... ] )
```

## 인수
<a name="ql-functions.coalesce.arguments"></a>

*expression*  
함수가 평가하는 하나 이상의 필드 명칭 또는 표현식 목록입니다. 각 인수는 지원되는 [데이터 타입](ql-reference.data-types.md) 중 하나일 수 있습니다.

## 반환 타입
<a name="ql-functions.coalesce.return-type"></a>

지원되는 모든 데이터 타입입니다. 반환 타입은 `NULL`이거낙 null이 아니고 누락되지 않은 값으로 평가되는 첫 번째 표현식의 타입과 동일합니다.

## 예
<a name="ql-functions.coalesce.examples"></a>

```
SELECT COALESCE(1, null) FROM << 0 >>         -- 1
SELECT COALESCE(null, null, 1) FROM << 0 >>   -- 1
SELECT COALESCE(null, 'string') FROM << 0 >>  -- "string"
```

## 관련 함수
<a name="ql-functions.coalesce.related"></a>
+ [exists](ql-functions.exists.md)
+ [nullIF](ql-functions.nullif.md)

# Amazon QLDB의 COUNT 함수
<a name="ql-functions.count"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `COUNT` 함수를 사용하여 주어진 표현식으로 정의된 문서 수를 반환합니다. 이 함수는 2가지 변형이 있습니다:
+ `COUNT(*)` - null 또는 누락 값의 포함 여부에 관계없이 대상 표의 모든 문서를 계수합니다.
+ `COUNT(expression)` - 특정 기존 필드 또는 표현식에서 null이 아닌 값을 가진 문서 수를 계수합니다.

**주의**  
`COUNT` 함수는 최적화되지 않았으므로 인덱싱된 조회 없이는 사용하지 않는 것이 좋습니다. 인덱싱된 조회 없이 QLDB에서 쿼리를 실행하면 전체 테이블 스캔이 호출됩니다. 이로 인해 동시성 충돌 및 트랜잭션 시간 초과를 포함하여 대규모 테이블에서 성능 문제가 발생할 수 있습니다.  
인덱싱된 필드 또는 문서 ID(예: `=` 또는 `IN`)에서 동등 *연산자*를 사용하여 `WHERE` 조건자 절이 포함된 문을 실행하는 것이 좋습니다. 자세한 내용은 [쿼리 성능 최적화](working.optimize.md)을 참조하세요.

## 구문
<a name="ql-functions.count.syntax"></a>

```
COUNT ( * | expression )
```

## 인수
<a name="ql-functions.count.arguments"></a>

*expression*  
함수가 실행되는 필드 명칭 또는 표현식. 이 파라미터는 지원되는 [데이터 타입](ql-reference.data-types.md) 중 하나일 수 있습니다.

## 반환 타입
<a name="ql-functions.count.return-type"></a>

`int`

## 예
<a name="ql-functions.count.examples"></a>

```
SELECT COUNT(*) FROM VehicleRegistration r WHERE r.LicensePlateNumber = 'CA762X' -- 1
SELECT COUNT(r.VIN) FROM Vehicle r WHERE r.VIN = '1N4AL11D75C109151'             -- 1
SELECT COUNT(a) FROM << { 'a' : 1 }, { 'a': 2 }, { 'a': 3 } >>                   -- 3
```

## 관련 함수
<a name="ql-functions.count.related"></a>
+ [AVG](ql-functions.avg.md)
+ [MAX](ql-functions.max.md)
+ [MIN](ql-functions.min.md)
+ [SIZE](ql-functions.size.md)
+ [SUM](ql-functions.sum.md)

# Amazon QLDB의 DATE\$1ADD 함수
<a name="ql-functions.date_add"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `DATE_ADD` 함수를 사용하여 주어진 타임스탬프 값을 지정된 간격만큼 증가시킵니다.

## 구문
<a name="ql-functions.date_add.syntax"></a>

```
DATE_ADD( datetimepart, interval, timestamp )
```

## 인수
<a name="ql-functions.date_add.arguments"></a>

*datetimepart*  
함수가 실행되는 날짜 또는 시간 부분입니다. 이 파라미터는 다음 중 하나일 수 있습니다:  
+ `year`
+ `month`
+ `day`
+ `hour`
+ `minute`
+ `second`

*interval*  
주어진 *timestamp*에 추가할 간격을 지정하는 정수입니다. 음의 정수는 간격을 감산합니다.

*timestamp*  
함수가 증분하는 데이터 타입 `timestamp`의 필드 명칭 또는 표현식.  
Ion 타임스탬프 리터럴 값은 백틱(``...``)으로 표시할 수 있습니다. 형식 지정 세부 정보 및 타임스탬프 값의 예는 Amazon Ion 사양 문서의 [타임스탬프](https://amzn.github.io/ion-docs/docs/spec.html#timestamp)를 참조하세요.

## 반환 타입
<a name="ql-functions.date_add.return-type"></a>

`timestamp`

## 예
<a name="ql-functions.date_add.examples"></a>

```
DATE_ADD(year, 5, `2010-01-01T`)                -- 2015-01-01T
DATE_ADD(month, 1, `2010T`)                     -- 2010-02T (result adds precision as necessary)
DATE_ADD(month, 13, `2010T`)                    -- 2011-02T (2010T is equivalent to 2010-01-01T00:00:00.000Z)
DATE_ADD(day, -1, `2017-01-10T`)                -- 2017-01-09T
DATE_ADD(hour, 1, `2017T`)                      -- 2017-01-01T01:00Z
DATE_ADD(hour, 1, `2017-01-02T03:04Z`)          -- 2017-01-02T04:04Z
DATE_ADD(minute, 1, `2017-01-02T03:04:05.006Z`) -- 2017-01-02T03:05:05.006Z
DATE_ADD(second, 1, `2017-01-02T03:04:05.006Z`) -- 2017-01-02T03:04:06.006Z

-- Runnable statements
SELECT DATE_ADD(year, 5, `2010-01-01T`) FROM << 0 >> -- 2015-01-01T
SELECT DATE_ADD(day, -1, `2017-01-10T`) FROM << 0 >> -- 2017-01-09T
```

## 관련 함수
<a name="ql-functions.date_add.related"></a>
+ [DATE\$1DIFF](ql-functions.date_diff.md)
+ [EXTRACT](ql-functions.extract.md)
+ [TO\$1STRING](ql-functions.to_string.md)
+ [TO\$1TIMESTAMP](ql-functions.to_timestamp.md)
+ [UTCNOW](ql-functions.utcnow.md)

# Amazon QLDB의 DATE\$1DIFF 함수
<a name="ql-functions.date_diff"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서 `DATE_DIFF` 함수를 사용하여 주어진 두 타임스탬프의 지정된 날짜 부분 간의 차이를 반환합니다.

## 구문
<a name="ql-functions.date_diff.syntax"></a>

```
DATE_DIFF( datetimepart, timestamp1, timestamp2 )
```

## 인수
<a name="ql-functions.date_diff.arguments"></a>

*datetimepart*  
함수가 실행되는 날짜 또는 시간 부분입니다. 이 파라미터는 다음 중 하나일 수 있습니다:  
+ `year`
+ `month`
+ `day`
+ `hour`
+ `minute`
+ `second`

*timestamp1*, *timestamp2*  
함수가 비교하는 데이터 타입 `timestamp`의 두 개의 필드 명칭 또는 표현식입니다. *timestamp2*가 *timestamp1*보다 이후인 경우 결과는 양수입니다. *timestamp2*가 *timestamp1*보다 이전인 경우 결과는 음수입니다.  
Ion 타임스탬프 리터럴 값은 백틱(``...``)으로 표시할 수 있습니다. 형식 지정 세부 정보 및 타임스탬프 값의 예는 Amazon Ion 사양 문서의 [타임스탬프](https://amzn.github.io/ion-docs/docs/spec.html#timestamp)를 참조하세요.

## 반환 타입
<a name="ql-functions.date_diff.return-type"></a>

`int`

## 예
<a name="ql-functions.date_diff.examples"></a>

```
DATE_DIFF(year, `2010-01-01T`, `2011-01-01T`)            -- 1
DATE_DIFF(year, `2010-12T`, `2011-01T`)                  -- 0 (must be at least 12 months apart to evaluate as a 1 year difference)
DATE_DIFF(month, `2010T`, `2010-05T`)                    -- 4 (2010T is equivalent to 2010-01-01T00:00:00.000Z)
DATE_DIFF(month, `2010T`, `2011T`)                       -- 12
DATE_DIFF(month, `2011T`, `2010T`)                       -- -12
DATE_DIFF(month, `2010-12-31T`, `2011-01-01T`)           -- 0 (must be at least a full month apart to evaluate as a 1 month difference)
DATE_DIFF(day, `2010-01-01T23:00Z`, `2010-01-02T01:00Z`) -- 0 (must be at least 24 hours apart to evaluate as a 1 day difference)

-- Runnable statements
SELECT DATE_DIFF(year, `2010-01-01T`, `2011-01-01T`) FROM << 0 >> -- 1
SELECT DATE_DIFF(month, `2010T`, `2010-05T`) FROM << 0 >>         -- 4
```

## 관련 함수
<a name="ql-functions.date_diff.related"></a>
+ [DATE\$1ADD](ql-functions.date_add.md)
+ [EXTRACT](ql-functions.extract.md)
+ [TO\$1STRING](ql-functions.to_string.md)
+ [TO\$1TIMESTAMP](ql-functions.to_timestamp.md)
+ [UTCNOW](ql-functions.utcnow.md)

# Amazon QLDB의 EXISTS 함수
<a name="ql-functions.exists"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서 PartiQL 값이 주어진된 경우 값이 비어 있지 않은 컬렉션이면 `EXISTS` 함수를 사용하여 `TRUE`을 반환합니다. 그렇지 않으면 이 함수가 `FALSE`를 반환합니다. `EXISTS`에 대한 입력이 컨테이너가 아닌 경우 결과는 `FALSE`입니다.

`EXISTS` 함수는 `NULL` 및 `MISSING`을 전파하지 않습니다.

## 구문
<a name="ql-functions.exists.syntax"></a>

```
EXISTS ( value )
```

## 인수
<a name="ql-functions.exists.arguments"></a>

*USD 상당*  
함수가 평가하는 필드 명칭 또는 표현식입니다. 이 파라미터는 지원되는 [데이터 타입](ql-reference.data-types.md) 중 하나일 수 있습니다.

## 반환 타입
<a name="ql-functions.exists.return-type"></a>

`bool`

## 예
<a name="ql-functions.exists.examples"></a>

```
EXISTS(`[]`)        -- false (empty list)
EXISTS(`[1, 2, 3]`) -- true (non-empty list)
EXISTS(`[missing]`) -- true (non-empty list)
EXISTS(`{}`)        -- false (empty struct)
EXISTS(`{ a: 1 }`)  -- true (non-empty struct)
EXISTS(`()`)        -- false (empty s-expression)
EXISTS(`(+ 1 2)`)   -- true (non-empty s-expression)
EXISTS(1)           -- false
EXISTS(`2017T`)     -- false
EXISTS(null)        -- false
EXISTS(missing)     -- error

-- Runnable statements
SELECT EXISTS(`[]`) FROM << 0 >>        -- false
SELECT EXISTS(`[1, 2, 3]`) FROM << 0 >> -- true
```

## 관련 함수
<a name="ql-functions.exists.related"></a>
+ [COALESCE](ql-functions.coalesce.md)
+ [nullIF](ql-functions.nullif.md)

# Amazon QLDB의 EXTRACT 함수
<a name="ql-functions.extract"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `EXTRACT` 함수를 사용하여 주어진 타임스탬프에서 지정된 날짜 또는 시간 부분의 정수 값을 반환합니다.

## 구문
<a name="ql-functions.extract.syntax"></a>

```
EXTRACT ( datetimepart FROM timestamp )
```

## 인수
<a name="ql-functions.extract.arguments"></a>

*datetimepart*  
함수가 추출하는 날짜 또는 시간 부분입니다. 이 파라미터는 다음 중 하나일 수 있습니다:  
+ `year`
+ `month`
+ `day`
+ `hour`
+ `minute`
+ `second`
+ `timezone_hour`
+ `timezone_minute`

*timestamp*  
함수가 추출하는 데이터 타입 `timestamp`의 필드 명칭 또는 표현식입니다. 이 파라미터가 알 수 없는 타입(`NULL` 또는`MISSING` )인 경우 함수는 `NULL`을 반환합니다.  
Ion 타임스탬프 리터럴 값은 백틱(``...``)으로 표시할 수 있습니다. 형식 지정 세부 정보 및 타임스탬프 값의 예는 Amazon Ion 사양 문서의 [타임스탬프](https://amzn.github.io/ion-docs/docs/spec.html#timestamp)를 참조하세요.

## 반환 타입
<a name="ql-functions.extract.return-type"></a>

`int`

## 예
<a name="ql-functions.extract.examples"></a>

```
EXTRACT(YEAR FROM `2010-01-01T`)                           -- 2010
EXTRACT(MONTH FROM `2010T`)                                -- 1 (equivalent to 2010-01-01T00:00:00.000Z)
EXTRACT(MONTH FROM `2010-10T`)                             -- 10
EXTRACT(HOUR FROM `2017-01-02T03:04:05+07:08`)             -- 3
EXTRACT(MINUTE FROM `2017-01-02T03:04:05+07:08`)           -- 4
EXTRACT(TIMEZONE_HOUR FROM `2017-01-02T03:04:05+07:08`)    -- 7
EXTRACT(TIMEZONE_MINUTE FROM `2017-01-02T03:04:05+07:08`)  -- 8

-- Runnable statements
SELECT EXTRACT(YEAR FROM `2010-01-01T`) FROM << 0 >> -- 2010
SELECT EXTRACT(MONTH FROM `2010T`) FROM << 0 >>      -- 1
```

## 관련 함수
<a name="ql-functions.extract.related"></a>
+ [DATE\$1ADD](ql-functions.date_add.md)
+ [DATE\$1DIFF](ql-functions.date_diff.md)
+ [TO\$1STRING](ql-functions.to_string.md)
+ [TO\$1TIMESTAMP](ql-functions.to_timestamp.md)
+ [UTCNOW](ql-functions.utcnow.md)

# Amazon QLDB의 LOWER 함수
<a name="ql-functions.lower"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `LOWER` 함수를 사용하여 주어진 문자열의 모든 대문자를 소문자로 변환합니다.

## 구문
<a name="ql-functions.lower.syntax"></a>

```
LOWER ( string )
```

## 인수
<a name="ql-functions.lower.arguments"></a>

*string*  
함수가 변환하는 데이터 타입 `string`의 필드 명칭 또는 표현식입니다.

## 반환 타입
<a name="ql-functions.lower.return-type"></a>

`string`

## 예
<a name="ql-functions.lower.examples"></a>

```
SELECT LOWER('AbCdEfG!@#$') FROM << 0 >> -- 'abcdefg!@#$'
```

## 관련 함수
<a name="ql-functions.lower.related"></a>
+ [CHAR\$1LENGTH](ql-functions.char_length.md)
+ [SUBSTRING](ql-functions.substring.md)
+ [TRIM](ql-functions.trim.md)
+ [UPPER](ql-functions.upper.md)

# Amazon QLDB의 MAX 함수
<a name="ql-functions.max"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `MAX` 함수를 사용하여 숫자 값 세트에서 최대값을 반환합니다.

## 구문
<a name="ql-functions.max.syntax"></a>

```
MAX ( expression )
```

## 인수
<a name="ql-functions.max.arguments"></a>

*expression*  
함수가 실행되는 숫자 데이터 타입의 필드 명칭 또는 표현식입니다.

## 데이터 타입
<a name="ql-functions.max.data-types"></a>

지원되는 인수 타입:
+ `int`
+ `decimal`
+ `float`

지원되는 반환 타입:
+ `int`
+ `decimal`
+ `float`

## 예
<a name="ql-functions.max.examples"></a>

```
SELECT MAX(r.PendingPenaltyTicketAmount) FROM VehicleRegistration r  -- 442.30
SELECT MAX(a) FROM << { 'a' : 1 }, { 'a': 2 }, { 'a': 3 } >>         -- 3
```

## 관련 함수
<a name="ql-functions.max.related"></a>
+ [AVG](ql-functions.avg.md)
+ [COUNT](ql-functions.count.md)
+ [MIN](ql-functions.min.md)
+ [SIZE](ql-functions.size.md)
+ [SUM](ql-functions.sum.md)

# Amazon QLDB의 MIN 함수
<a name="ql-functions.min"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `MIN` 함수를 사용하여 수치 세트에서 최소값을 반환합니다.

## 구문
<a name="ql-functions.min.syntax"></a>

```
MIN ( expression )
```

## 인수
<a name="ql-functions.min.arguments"></a>

*expression*  
함수가 실행되는 숫자 데이터 타입의 필드 명칭 또는 표현식입니다.

## 데이터 타입
<a name="ql-functions.min.data-types"></a>

지원되는 인수 타입:
+ `int`
+ `decimal`
+ `float`

지원되는 반환 타입:
+ `int`
+ `decimal`
+ `float`

## 예
<a name="ql-functions.min.examples"></a>

```
SELECT MIN(r.PendingPenaltyTicketAmount) FROM VehicleRegistration r  -- 30.45
SELECT MIN(a) FROM << { 'a' : 1 }, { 'a': 2 }, { 'a': 3 } >>         -- 1
```

## 관련 함수
<a name="ql-functions.min.related"></a>
+ [AVG](ql-functions.avg.md)
+ [COUNT](ql-functions.count.md)
+ [MAX](ql-functions.max.md)
+ [SIZE](ql-functions.size.md)
+ [SUM](ql-functions.sum.md)

# Amazon QLDB의 nullIF 함수
<a name="ql-functions.nullif"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서 두 개의 표현식 주어지면 `NULLIF` 함수를 사용하여 두 개의 표현식이 동일한 값으로 평가되는 경우 `NULL`를 반환합니다. 그렇지 않다면 이 함수는 첫 번째 표현식을 평가한 결과를 반환합니다.

`NULLIF` 함수는 `NULL` 및 `MISSING`을 전파하지 않습니다.

## 구문
<a name="ql-functions.nullif.syntax"></a>

```
NULLIF ( expression1, expression2 )
```

## 인수
<a name="ql-functions.nullif.arguments"></a>

*expression1*, *expression2*  
함수가 비교하는 두 개의 필드 명칭 또는 표현식입니다. 이러한 파라미터는 지원되는 [데이터 타입](ql-reference.data-types.md) 중 하나일 수 있습니다.

## 반환 타입
<a name="ql-functions.nullif.return-type"></a>

지원되는 모든 데이터 타입입니다. 반환 타입은 `NULL`이거나 첫 번째 표현식의 타입과 같습니다.

## 예
<a name="ql-functions.nullif.examples"></a>

```
NULLIF(1, 1)             -- null
NULLIF(1, 2)             -- 1
NULLIF(1.0, 1)           -- null
NULLIF(1, '1')           -- 1
NULLIF([1], [1])         -- null
NULLIF(1, NULL)          -- 1
NULLIF(NULL, 1)          -- null
NULLIF(null, null)       -- null
NULLIF(missing, null)    -- null
NULLIF(missing, missing) -- null

-- Runnable statements
SELECT NULLIF(1, 1) FROM << 0 >>   -- null
SELECT NULLIF(1, '1') FROM << 0 >> -- 1
```

## 관련 함수
<a name="ql-functions.nullif.related"></a>
+ [COALESCE](ql-functions.coalesce.md)
+ [exists](ql-functions.exists.md)

# Amazon QLDB의 SIZE 함수
<a name="ql-functions.size"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `SIZE` 함수를 사용하여 주어진 컨테이너 데이터 타입(목록, 구조 또는 백)의 요소 수를 반환합니다.

## 구문
<a name="ql-functions.size.syntax"></a>

```
SIZE ( container )
```

## 인수
<a name="ql-functions.size.arguments"></a>

*컨테이너*  
함수가 실행되는 컨테이너 필드 명칭 또는 표현식.

## 데이터 타입
<a name="ql-functions.size.data-types"></a>

지원되는 인수 타입:
+ list
+ 구조
+ 백

반환 타입: `int`

`SIZE`에 대한 입력이 컨테이너가 아닌 경우 함수에서 오류가 발생합니다.

## 예
<a name="ql-functions.size.examples"></a>

```
SIZE(`[]`)                   -- 0
SIZE(`[null]`)               -- 1
SIZE(`[1,2,3]`)              -- 3
SIZE(<<'foo', 'bar'>>)       -- 2
SIZE(`{foo: bar}`)           -- 1 (number of key-value pairs)
SIZE(`[{foo: 1}, {foo: 2}]`) -- 2
SIZE(12)                     -- error

-- Runnable statements
SELECT SIZE(`[]`) FROM << 0 >>      -- 0
SELECT SIZE(`[1,2,3]`) FROM << 0 >> -- 3
```

## 관련 함수
<a name="ql-functions.size.related"></a>
+ [AVG](ql-functions.avg.md)
+ [COUNT](ql-functions.count.md)
+ [MAX](ql-functions.max.md)
+ [MIN](ql-functions.min.md)
+ [SUM](ql-functions.sum.md)

# Amazon QLDB의 SUBSTRING 함수
<a name="ql-functions.substring"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `SUBSTRING` 함수를 사용하여 주어진 문자열에서 하위 문자열을 반환합니다. 하위 문자열은 지정된 시작 인덱스에서 시작하여 문자열의 마지막 문자에서 끝나거나 지정된 길이에서 끝납니다.

## 구문
<a name="ql-functions.substring.syntax"></a>

```
SUBSTRING ( string, start-index [, length ] )
```

## 인수
<a name="ql-functions.substring.arguments"></a>

*string*  
하위 문자열을 추출할 데이터 타입 `string`의 필드 명칭 또는 표현식입니다.

*start-index*  
*문자열*내에서 추출을 시작할 시작 위치. 이 수는 음의 값이 될 수 있습니다.  
*문자열*의 첫 번째 문자가 인덱스 1을 갖습니다.

*length*  
(옵션) *start-index*에서 시작하여(*start-index* \$1 *length*) - 1에서 끝나는 *string*에서 추출할 문자(코드 포인트)의 수입니다. 다시 말해 하위 문자열의 길이입니다. 이 수는 음의 값이 될 수 없습니다.  
이 파라미터를 제공하지 않으면 함수는 *string* 끝까지 진행됩니다.

## 반환 타입
<a name="ql-functions.substring.return-type"></a>

`string`

## 예
<a name="ql-functions.substring.examples"></a>

```
SUBSTRING('123456789', 0)      -- '123456789'
SUBSTRING('123456789', 1)      -- '123456789'
SUBSTRING('123456789', 2)      -- '23456789'
SUBSTRING('123456789', -4)     -- '123456789'
SUBSTRING('123456789', 0, 999) -- '123456789'
SUBSTRING('123456789', 0, 2)   -- '1'
SUBSTRING('123456789', 1, 999) -- '123456789'
SUBSTRING('123456789', 1, 2)   -- '12'
SUBSTRING('1', 1, 0)           -- ''
SUBSTRING('1', 1, 0)           -- ''
SUBSTRING('1', -4, 0)          -- ''
SUBSTRING('1234', 10, 10)      -- ''

-- Runnable statements
SELECT SUBSTRING('123456789', 1) FROM << 0 >>    -- "123456789"
SELECT SUBSTRING('123456789', 1, 2) FROM << 0 >> -- "12"
```

## 관련 함수
<a name="ql-functions.substring.related"></a>
+ [CHAR\$1LENGTH](ql-functions.char_length.md)
+ [LOWER](ql-functions.lower.md)
+ [TRIM](ql-functions.trim.md)
+ [UPPER](ql-functions.upper.md)

# Amazon QLDB의 SUM 함수
<a name="ql-functions.sum"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `SUM` 함수를 사용하여 입력 필드 또는 표현식 값의 합계를 반환합니다. 이 함수는 수치를 사용하고 null 또는 누락 값은 무시합니다.

## 구문
<a name="ql-functions.sum.syntax"></a>

```
SUM ( expression )
```

## 인수
<a name="ql-functions.sum.arguments"></a>

*expression*  
함수가 실행되는 숫자 데이터 타입의 필드 명칭 또는 표현식입니다.

## 데이터 타입
<a name="ql-functions.sum.data-types"></a>

지원되는 인수 타입:
+ `int`
+ `decimal`
+ `float`

지원되는 반환 타입:
+ `int` - 정수 인수의 경우
+ `decimal` - 십진수 또는 부동 소수점 인수의 경우

## 예
<a name="ql-functions.sum.examples"></a>

```
SELECT SUM(r.PendingPenaltyTicketAmount) FROM VehicleRegistration r  -- 735.95
SELECT SUM(a) FROM << { 'a' : 1 }, { 'a': 2 }, { 'a': 3 } >>         -- 6
```

## 관련 함수
<a name="ql-functions.sum.related"></a>
+ [AVG](ql-functions.avg.md)
+ [COUNT](ql-functions.count.md)
+ [MAX](ql-functions.max.md)
+ [MIN](ql-functions.min.md)
+ [SIZE](ql-functions.size.md)

# Amazon QLDB의 TO\$1STRING 함수
<a name="ql-functions.to_string"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `TO_STRING` 함수를 사용하여 주어진 타임스탬프의 문자열 표현을 지정된 형식 패턴으로 반환합니다.

## 구문
<a name="ql-functions.to_string.syntax"></a>

```
TO_STRING ( timestamp, 'format' )
```

## 인수
<a name="ql-functions.to_string.arguments"></a>

*timestamp*  
함수가 문자열로 변환하는 데이터 타입 `timestamp`의 필드 명칭 또는 표현식입니다.  
Ion 타임스탬프 리터럴 값은 백틱(``...``)으로 표시할 수 있습니다. 형식 지정 세부 정보 및 타임스탬프 값의 예는 Amazon Ion 사양 문서의 [타임스탬프](https://amzn.github.io/ion-docs/docs/spec.html#timestamp)를 참조하세요.

*format*  
날짜 부분을 기준으로 결과의 형식 패턴을 지정하는 문자열 리터럴입니다. 유효한 형식은 [타임스탬프 형식 문자열](ql-functions.timestamp-format.md) 섹션을 참조하세요.

## 반환 타입
<a name="ql-functions.to_string.return-type"></a>

`string`

## 예
<a name="ql-functions.to_string.examples"></a>

```
TO_STRING(`1969-07-20T20:18Z`, 'MMMM d, y')                     -- "July 20, 1969"
TO_STRING(`1969-07-20T20:18Z`, 'MMM d, yyyy')                   -- "Jul 20, 1969"
TO_STRING(`1969-07-20T20:18Z`, 'M-d-yy')                        -- "7-20-69"
TO_STRING(`1969-07-20T20:18Z`, 'MM-d-y')                        -- "07-20-1969"
TO_STRING(`1969-07-20T20:18Z`, 'MMMM d, y h:m a')               -- "July 20, 1969 8:18 PM"
TO_STRING(`1969-07-20T20:18Z`, 'y-MM-dd''T''H:m:ssX')           -- "1969-07-20T20:18:00Z"
TO_STRING(`1969-07-20T20:18+08:00Z`, 'y-MM-dd''T''H:m:ssX')     -- "1969-07-20T20:18:00Z"
TO_STRING(`1969-07-20T20:18+08:00`, 'y-MM-dd''T''H:m:ssXXXX')   -- "1969-07-20T20:18:00+0800"
TO_STRING(`1969-07-20T20:18+08:00`, 'y-MM-dd''T''H:m:ssXXXXX')  -- "1969-07-20T20:18:00+08:00"

-- Runnable statements
SELECT TO_STRING(`1969-07-20T20:18Z`, 'MMMM d, y') FROM << 0 >>           -- "July 20, 1969"
SELECT TO_STRING(`1969-07-20T20:18Z`, 'y-MM-dd''T''H:m:ssX') FROM << 0 >> -- "1969-07-20T20:18:00Z"
```

## 관련 함수
<a name="ql-functions.to_string.related"></a>
+ [CAST](ql-functions.cast.md)
+ [DATE\$1ADD](ql-functions.date_add.md)
+ [DATE\$1DIFF](ql-functions.date_diff.md)
+ [EXTRACT](ql-functions.extract.md)
+ [TO\$1TIMESTAMP](ql-functions.to_timestamp.md)
+ [UTCNOW](ql-functions.utcnow.md)

# Amazon QLDB의 TO\$1TIMESTAMP 함수
<a name="ql-functions.to_timestamp"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서 타임스탬프를 나타내는 문자열이 주어지면 `TO_TIMESTAMP` 함수를 사용하여 문자열을 `timestamp` 데이터 타입으로 변환합니다. 이것은 `TO_STRING`의 역연산입니다.

## 구문
<a name="ql-functions.to_timestamp.syntax"></a>

```
TO_TIMESTAMP ( string [, 'format' ] )
```

## 인수
<a name="ql-functions.to_timestamp.arguments"></a>

*string*  
함수가 타임스탬프로 변환하는 데이터 타입 `string`의 필드 명칭 또는 표현식입니다.

*format*  
(옵션) 입력 *문자열*의 형식 패턴을 날짜 부분 면에서 정의하는 문자열 리터럴입니다. 유효한 형식은 [타임스탬프 형식 문자열](ql-functions.timestamp-format.md) 섹션을 참조하세요.  
이 인수를 생략하면 함수는 *string*이 [표준 Ion 타임스탬프](http://amzn.github.io/ion-docs/docs/spec.html#timestamp) 형식이라고 가정합니다. 이 함수를 사용하여 Ion 타임스탬프를 파싱하는 데 권장되는 방법입니다.  
제로 패딩은 단일 문자 형식 기호(예:`y`, `M`, `d`, `H`, `h`, `m`, `s`)를 사용할 때는 선택 사항이지만, 제로 패딩 변형(예: `yyyy`, `MM`, `dd`, `HH`, `hh`, `mm`, `ss`)에는 필요합니다.  
두 자리 연도(형식 기호 `yy`)에는 특별한 처리가 적용됩니다. 70보다 크거나 같은 값에는 1900이 추가되고 70보다 작은 값에는 2000이 추가됩니다.  
월 명칭과 AM 또는 PM 표시기는 대소문자를 구분하지 않습니다.

## 반환 타입
<a name="ql-functions.to_timestamp.return-type"></a>

`timestamp`

## 예
<a name="ql-functions.to_timestamp.examples"></a>

```
TO_TIMESTAMP('2007T')                         -- `2007T`
TO_TIMESTAMP('2007-02-23T12:14:33.079-08:00') -- `2007-02-23T12:14:33.079-08:00`
TO_TIMESTAMP('2016', 'y')                     -- `2016T`
TO_TIMESTAMP('2016', 'yyyy')                  -- `2016T`
TO_TIMESTAMP('02-2016', 'MM-yyyy')            -- `2016-02T`
TO_TIMESTAMP('Feb 2016', 'MMM yyyy')          -- `2016-02T`
TO_TIMESTAMP('February 2016', 'MMMM yyyy')     -- `2016-02T`

-- Runnable statements
SELECT TO_TIMESTAMP('2007T') FROM << 0 >>              -- 2007T
SELECT TO_TIMESTAMP('02-2016', 'MM-yyyy') FROM << 0 >> -- 2016-02T
```

## 관련 함수
<a name="ql-functions.to_timestamp.related"></a>
+ [CAST](ql-functions.cast.md)
+ [DATE\$1ADD](ql-functions.date_add.md)
+ [DATE\$1DIFF](ql-functions.date_diff.md)
+ [EXTRACT](ql-functions.extract.md)
+ [TO\$1STRING](ql-functions.to_string.md)
+ [UTCNOW](ql-functions.utcnow.md)

# Amazon QLDB의 TRIM 함수
<a name="ql-functions.trim"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `TRIM` 함수를 사용하여 선행 및 후행 공백 또는 지정된 문자 *세트*를 제거하여 지정된 문자열을 잘라냅니다.

## 구문
<a name="ql-functions.trim.syntax"></a>

```
TRIM ( [ LEADING | TRAILING | BOTH [ characters ] FROM ] string)
```

## 인수
<a name="ql-functions.trim.arguments"></a>

LEADING  
(옵션) *문자열*의 시작 부분에서 공백 또는 지정된 문자를 제거할 것임을 나타냅니다. 지정되지 않은 경우, 기본 작업은 `BOTH`입니다.

TRAILING  
(옵션) *문자열*의 끝 부분에서 공백 또는 지정된 문자를 제거할 것임을 나타냅니다. 지정되지 않은 경우, 기본 작업은 `BOTH`입니다.

BOTH  
(옵션) *string*의 처음과 끝 부분에서 선행 및 후행 공백 또는 지정된 문자를 모두 제거할 것임을 나타냅니다.

*작성해야 합니다*  
(옵션) 제거할 문자 *세트*로, `string`로 지정됩니다.  
이 파라미터를 제공하지 않으면 공백이 제거됩니다.

*string*  
함수가 잘라내는 데이터 타입 `string`의 필드 명칭 또는 표현식입니다.

## 반환 타입
<a name="ql-functions.trim.return-type"></a>

`string`

## 예
<a name="ql-functions.trim.examples"></a>

```
TRIM('       foobar         ')               -- 'foobar'
TRIM('      \tfoobar\t         ')            -- '\tfoobar\t'
TRIM(LEADING FROM '       foobar         ')  -- 'foobar         '
TRIM(TRAILING FROM '       foobar         ') -- '       foobar'
TRIM(BOTH FROM '       foobar         ')     -- 'foobar'
TRIM(BOTH '1' FROM '11foobar11')             -- 'foobar'
TRIM(BOTH '12' FROM '1112211foobar22211122') -- 'foobar'

-- Runnable statements
SELECT TRIM('       foobar         ') FROM << 0 >>              -- "foobar"
SELECT TRIM(LEADING FROM '       foobar         ') FROM << 0 >> -- "foobar         "
```

## 관련 함수
<a name="ql-functions.trim.related"></a>
+ [CHAR\$1LENGTH](ql-functions.char_length.md)
+ [LOWER](ql-functions.lower.md)
+ [SUBSTRING](ql-functions.substring.md)
+ [UPPER](ql-functions.upper.md)

# Amazon QLDB의 TXID 함수
<a name="ql-functions.txid"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `TXID` 함수를 사용하여 실행 중인 현재 명령문의 고유한 트랜잭션 ID를 반환합니다. 이 값은 현재 트랜잭션이 저널에 체결될 때 문서의 `txId` 메타데이터 필드에 할당되는 값입니다.

## 구문
<a name="ql-functions.txid.syntax"></a>

```
TXID()
```

## 인수
<a name="ql-functions.txid.arguments"></a>

없음

## 반환 타입
<a name="ql-functions.txid.return-type"></a>

`string`

## 예
<a name="ql-functions.txid.examples"></a>

```
SELECT TXID() FROM << 0 >>  -- "L7S9iJqcn9W2M4qOEn27ay"
SELECT TXID() FROM Person WHERE GovId = 'LEWISR261LL'  -- "BKeMb48PNyvHWJGZHkaodG"
```

# Amazon QLDB의 UPPER 함수
<a name="ql-functions.upper"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `UPPER` 함수를 사용하여 주어진 문자열의 모든 소문자를 대문자로 변환합니다.

## 구문
<a name="ql-functions.upper.syntax"></a>

```
UPPER ( string )
```

## 인수
<a name="ql-functions.upper.arguments"></a>

*string*  
함수가 변환하는 데이터 타입 `string`의 필드 명칭 또는 표현식입니다.

## 반환 타입
<a name="ql-functions.upper.return-type"></a>

`string`

## 예
<a name="ql-functions.upper.examples"></a>

```
SELECT UPPER('AbCdEfG!@#$') FROM << 0 >> -- 'ABCDEFG!@#$'
```

## 관련 함수
<a name="ql-functions.upper.related"></a>
+ [CHAR\$1LENGTH](ql-functions.char_length.md)
+ [LOWER](ql-functions.lower.md)
+ [SUBSTRING](ql-functions.substring.md)
+ [TRIM](ql-functions.trim.md)

# Amazon QLDB의 UTCNOW 함수
<a name="ql-functions.utcnow"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

Amazon QLDB에서는 `UTCNOW` 함수를 사용하여 UTC(협정 세계시) 기준 현재 시간을 `timestamp`로 반환합니다.

## 구문
<a name="ql-functions.utcnow.syntax"></a>

```
UTCNOW()
```

이 함수를 사용하려면 `SELECT` 쿼리에 `FROM` 절을 지정해야 합니다.

## 인수
<a name="ql-functions.utcnow.arguments"></a>

없음

## 반환 타입
<a name="ql-functions.utcnow.return-type"></a>

`timestamp`

## 예
<a name="ql-functions.utcnow.examples"></a>

```
SELECT UTCNOW() FROM << 0 >>  -- 2019-12-27T20:12:16.999Z
SELECT UTCNOW() FROM Person WHERE GovId = 'LEWISR261LL'  -- 2019-12-27T20:12:26.999Z

INSERT INTO Person VALUE { 'firstName': 'Jane', 'createdAt': UTCNOW() }
UPDATE Person p SET p.updatedAt = UTCNOW() WHERE p.firstName = 'John'
```

## 관련 함수
<a name="ql-functions.utcnow.related"></a>
+ [DATE\$1ADD](ql-functions.date_add.md)
+ [DATE\$1DIFF](ql-functions.date_diff.md)
+ [EXTRACT](ql-functions.extract.md)
+ [TO\$1STRING](ql-functions.to_string.md)
+ [TO\$1TIMESTAMP](ql-functions.to_timestamp.md)

# 타임스탬프 형식 문자열
<a name="ql-functions.timestamp-format"></a>

**중요**  
지원 종료 공지: 기존 고객은 07/31/2025에 지원이 종료될 때까지 Amazon QLDB를 사용할 수 있습니다. 자세한 내용은 [Amazon QLDB 원장을 Amazon Aurora PostgreSQL로 마이그레이션](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)을 참조하세요.

이 섹션에서는 타임스탬프 형식 문자열에 대한 참조 정보를 제공합니다.

타임스탬프 형식 문자열은 `TO_STRING` 및 `TO_TIMESTAMP` 함수에 적용됩니다. 이러한 문자열에는 날짜 부분 구분 기호(예: '`-`', '`/`' 또는 '`:`')와 다음 형식 기호가 포함될 수 있습니다.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/qldb/latest/developerguide/ql-functions.timestamp-format.html)