데이터 유형 변환 함수
이 절에는 하나의 데이터 유형에서 다른 데이터 유형으로 표현식을 변환하는 함수에 대한 간략한 설명이 포함되어 있습니다.
함수 | 기능 |
---|---|
convert | 하나의 지원되는 데이터 유형에서 다른 데이터 유형으로 표현식을 변환합니다. |
numbertostring | 지정된 마스크를 사용하여 정수식 또는 부동 소수점 표현식을 문자열 표현식으로 변환합니다. |
stringtotime | 지정된 마스크를 사용하여 문자열 표현식을 시간 표현식으로 변환합니다. |
timetostring | 지정된 마스크를 사용하여 시간 표현식을 문자열 표현식으로 변환합니다. |
is_valid | 지정된 표현식이 지정된 단순 데이터 유형으로 변환될 수 있는 유효한 값인지 여부를 판별합니다. |
convert
convert (source_expr, type_name)
각 항목에 대한 설명은 다음과 같습니다. 매개변수 | 설명 |
---|---|
source_expr | 지원되는 데이터 유형의 표현식입니다. 이 표현식은 type_name에 지정된 데이터 유형으로 변환됩니다. |
type_name | source_expr이 변환된 데이터 유형입니다. 유효한 항목은 float, float[ ], integer, integer[ ], string, string[], Boolean, Boolean[ ], time 및 time[ ]입니다. type_name 뒤에 대괄호([ ])가 오면 source_expr도 배열이어야 합니다. 배열의 각 요소는 단순 데이터 유형에 대해 적용되는 규칙에 따라 type_name으로 변환됩니다. |
convert 함수의 결과는 source_exp 및 type_name의 데이터 유형에 따라 다릅니다.
부울에서 변환
source_expr이 부울 유형인 경우, convert 함수의 결과는 다음과 같습니다.
부울에서 다음으로 변환... | 결과 |
---|---|
Boolean | 변경되지 않습니다. |
float | 부울 표현식이 true인 경우 결과는 1이고 부울 표현식이 false인 경우 결과는 0입니다. |
integer | 부울 표현식이 true인 경우 결과는 1이고 부울 표현식이 false인 경우 결과는 0입니다. |
string | 부울 표현식이 true인 경우 결과는 "true"이고, 부울 표현식이 false인 경우 결과는 "false"입니다. |
time | 구문 오류가 발생합니다. |
부동 소수점에서 변환
source_expr이 부동 소수점 유형인 경우, convert 함수의 결과는 다음과 같습니다.
부동 소수점에서 다음으로 변환... | 결과 |
---|---|
Boolean | source_expr = 0인 경우 결과는 false이고 source_expr = 1인 경우 결과는 true입니다. source_expr <> 0 또는 1인 경우 구문 오류가 발생합니다. |
float | 변경되지 않습니다. |
integer | source_expr의 정수 파트를 변환합니다(즉, 소수점 오른쪽에 있는 모든 수를 자름). 결과가 정수 범위 내에 있지 않은 경우 오류가 발생합니다. |
string | 부동 소수점을 표시하는 숫자 문자의 문자열을 결과로 생성합니다. |
time | source_expr의 정수 파트를 초 수로 사용하여 1/1/1970 00:00:00 협정 세계시(UTC)에 추가합니다. 새 값을 리턴합니다. 이전에는 그리니치 표준시(GMT)로 알려진 협정 세계시(UTC)가 세계 표준 참조 시간대입니다. 예를 들어, convert (5.3, time)는 1/1/1970 00:00:05를 리턴합니다. |
정수에서 변환
정수에서 다음으로 변환... | 결과 |
---|---|
Boolean | source_expr = 0인 경우 결과는 false이고 source_expr = 1인 경우 결과는 true입니다. source_expr <> 0 또는 1인 경우 구문 오류가 발생합니다. |
float | 동등한 부동 소수점 값을 결과로 생성합니다. |
integer | 변경되지 않습니다. |
string | 정수를 표시하는 숫자 문자의 문자열을 결과로 생성합니다. |
time | source_expr을 초 수로 사용하여 1/1/1970 00:00:00 협정 세계시(UTC)에 추가합니다. 새 값을 리턴합니다. 예를 들어, convert (5, time)는 1/1/1970 00:00:05를 리턴합니다. |
문자열에서 변환
source_expr이 문자열 유형인 경우, convert 함수의 결과는 다음과 같습니다.
문자열에서 다음으로 변환... | 결과 |
---|---|
Boolean | source_expr = "true" 또는 source_expr = "false"가 아닌 경우 구문 오류가 발생합니다. (모든 대소문자 조합은 승인 가능합니다.) |
float | source_expr이 적당한 부동 소수점 값 표현이 아닌 경우 구문 오류가 발생합니다. |
integer | source_expr이 적당한 정수 값 표현이 아닌 경우 구문 오류가 발생합니다. |
string | 변경되지 않습니다. |
time | source_expr이 적당한 시간 값 표현이고 워크플로우 시스템의 날짜/시간 마스크에 지정된 형식을 사용하는 경우 외에는 구문 오류가 발생합니다. |
시간에서 변환
source_expr이 시간 유형인 경우, convert 함수의 결과는 다음과 같습니다.
시간에서 다음으로 변환... | 결과 |
---|---|
Boolean | 구문 오류가 발생합니다. |
float | 현재 시스템 시간과 1/1/1970 00:00:00 협정 세계시(UTC) 사이의 시간(초)을 리턴합니다. 예를 들어, SysTime = 1/1/1970 00:00:28 UTC인 경우, convert (SysTime, float)는 28을 리턴합니다. 현재 시스템 시간이 UTC 이외의 시간대로 설정된 경우 convert 함수는 필요한 값을 조정합니다. 예를 들어, 태평양 표준시(PST)와 UTC 사이에는 8시간 차이가 있습니다. SysTime = 1/1/1970 00:00:28 PST이고 로컬 시간대가 PST인 경우, convert(SysTime, float)는 28828.0을 리턴합니다. 8(시간) * 60(분) *60(초) + 28(초) |
integer | 현재 시스템 시간과 1/1/1970 00:00:00 협정 세계시(UTC) 사이의 시간(초)을 리턴합니다. 예를 들어, SysTime = 1/1/1970 00:00:28 UTC인 경우, convert (SysTime, integer)는 28을 리턴합니다. 현재 시스템 시간이 UTC 이외의 시간대로 설정된 경우 convert 함수는 필요한 값을 조정합니다. 예를 들어, PST와 UTC 사이에는 8시간 차이가 있습니다. SysTime = 1/1/1970 00:00:28 PST이고 로컬 시간대가 태평양 표준시인 경우, convert(SysTime, integer)는 28828을 리턴합니다. 8(시간) * 60(분) *60(초) + 28(초) |
string | source_expr의 문자열 표현을 결과로 생성합니다. 이 문자열은 워크플로우 시스템의 날짜/시간 마스크에 지정된 형식을 사용합니다. |
time | 변경되지 않습니다. |
numbertostring
이 함수는 지정된 형식을 사용하여 부동 소수점 표현식 또는 정수식을 문자열 표현식으로 변환합니다. 숫자를 특정 형식(예: $1,000,000)으로 표시하려는 경우에 이 함수를 사용하십시오. 또한 numbertostring 함수를 사용하여 숫자 반올림을 수행할 수 있습니다.
numbertostring (num_exp{, num_mask}opt)
각 항목에 대한 설명은 다음과 같습니다. 매개변수 | 설명 |
---|---|
num_exp | 부동 소수점 유형 또는 정수 유형의 표현식입니다. |
num_mask | numbertostring 함수의 출력 형식을 결정하는 숫자 마스크입니다. 선택적이지만 숫자 마스크를 입력하지 않는 경우 numbertostring 함수는 convert 함수와 동등합니다. |
숫자 마스크
숫자 마스크는 numbertostring 함수의 출력을 형식화하는 데 사용되는 템플리트입니다. 숫자 마스크는 다음 컴포넌트의 모든 유효한 조합을 포함하는 문자열 표현식입니다.
컴포넌트 | 의미 |
---|---|
+(더하기) | 마스크의 첫 번째 또는 마지막 컴포넌트인 경우, 수의 부호입니다. 첫 번째 또는 마지막 이외의 위치에 있는 경우, 더하기 부호는 마스크에 삽입된 위치 그대로 출력 문자열에 삽입됩니다. 예를 들면 다음과 같습니다. numbertostring (12345, "###+##") 이 구문은 123+45를 출력합니다. |
-(빼기) | 마스크의 첫 번째 또는 마지막 컴포넌트인 경우, 수가 음수이면 음의 부호를 표시하고 수가 양수이면 공백을 표시합니다. 첫 번째 또는 마지막 이외의 위치에 있는 경우, 빼기 부호는 마스크에 삽입된 위치 그대로 출력 문자열에 삽입됩니다. 예를 들면 다음과 같습니다. numbertostring (123456789, "###-##-####") 이 구문은 123-45-6789를 출력합니다. |
#(번호 부호) | 유효한 경우 숫자를 표시합니다. 마스크에 유효 숫자보다 많은 #가 포함된 경우, 맨 오른쪽 #가 먼저 숫자를 수신하며 초과 #는 공백으로 채워집니다. |
0(영) | 유효 숫자 여부에 관계없이 숫자를 표시합니다. 결과로 선행 제로와 후미 제로가 모두 생성할 수 있습니다. |
. (소수점) | 소수점의 이동 위치를 결정합니다. 지정되지 않은 경우, 소수점은 마스크 오른쪽 끝에 있는 것으로 가정됩니다. 숫자는 마스크에 적합하게 반올림됩니다. 마스크에는 하나의 소수점만 허용됩니다. |
숫자 마스크 샘플
numbertostring 함수가 0, +29, -3344 및 77.88369를 변환할 때 결과 출력은 다음과 같습니다. 출력은 표시된 숫자 마스크에 따라 형식화됩니다.
마스크 | 0 | +29 | -3344 | 77.88369 |
---|---|---|---|---|
0000 | 0000 | 0029 | 3344 | 0078 |
#### | 29 | 3344 | 78 | |
$#,### | $ | $29 | $3,344 | $78 |
+#### | + | +29 | -3344 | +78 |
-#### | 29 | -3344 | 78 | |
####+ | + | 29+ | 3344- | 78+ |
####- | 29 | 3344- | 78 | |
##.## | . | 29. | 런타임 오류 | 77.88 |
숫자 반올림
numbertostring (Number1, "#,###.###")
3,344.779
is_valid
is_valid (expr, type)
각 항목에 대한 설명은 다음과 같습니다. 매개변수 | 설명 |
---|---|
expr | 모든 표현식 |
type | 단순 데이터 유형(Boolean, float, integer, string, time) |
is_valid (str, Boolean)
is_valid ("1.2.3", float)
is_valid (1e20, integer)
마지막 업데이트 날짜: 2016년 3월
bpfe005.htm
© Copyright IBM Corp. 2016.