데이터 준비 매핑 함수

데이터 준비 함수를 사용하여 소스 필드에 입력한 내용에 따라 값을 계산하고 계산할 수 있습니다.

필드

필드 이름은 유니코드 문자 및 자릿수의 무제한 길이 시퀀스로 문자, 달러 기호( )로 시작하는 모든 올바른 식별자가 될 수 있습니다$) 또는 밑줄 문자(_). 변수 이름은 대소문자를 구분합니다.

필드 이름이 이 규칙을 따르지 않는 경우 필드 이름을 ${}. 따라서 예를 들어 필드 이름이 "First Name" 또는 "First.Name"인 경우 이름을 다음과 같이 래핑해야 합니다 ${First Name} 또는 ${First\.Name} 각각 사용할 수 있습니다.

계층과 상호 작용할 때 하위 속성에 마침표(.), 백슬래시(\)을 사용하여 특수 문자를 이스케이프 처리합니다. 자세한 내용은 다음 안내서를 참조하십시오. 특수 문자 이스케이프 처리.

또한 필드 이름이 임의 다음 예약된 키워드 중에서 ${}:

new, mod, or, break, var, lt, for, false, while, eq, gt, div, not, null, continue, else, and, ne, true, le, if, ge, return, _errors

점 표기법을 사용하여 하위 필드 내의 데이터에 액세스할 수 있습니다. 예를 들어 name 개체, 액세스 firstName 필드, name.firstName.

함수 목록

다음 표에는 샘플 표현식 및 결과 출력을 포함하여 지원되는 모든 매핑 함수가 나열되어 있습니다.

문자열 함수

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
concat 지정된 문자열을 연결합니다.
  • 문자열: 연결할 문자열입니다.
concat(STRING_1, STRING_2) concat("Hi, ", "there", "!") "Hi, there!"
분해 regex를 기반으로 문자열을 분할하고 부분 배열을 반환합니다. 선택적으로 regex를 포함하여 문자열을 분할할 수 있습니다. 기본적으로 분할은 ","로 확인됩니다. 다음 구분 기호 필요 도망치다 \: +, ?, ^, |, ., [, (, {, ), *, $, \ 여러 문자를 구분 기호로 포함하는 경우 구분 기호는 다중 문자 구분 기호로 처리됩니다.
  • 문자열: 필수 여부 분할해야 하는 문자열입니다.
  • REGEX: 선택 사항입니다 문자열을 분할하는 데 사용할 수 있는 정규 표현식입니다.
explode(STRING, REGEX) explode("Hi, there!", " ") ["Hi,", "there"]
인스턴스 하위 문자열의 위치/인덱스를 반환합니다.
  • 입력: 필수 여부 검색 중인 문자열입니다.
  • 하위 문자열: 필수 여부 문자열 내에서 검색되는 하위 문자열입니다.
  • START_POSITION: 선택 사항입니다 문자열에서 찾기를 시작할 위치.
  • 발생 횟수: 선택 사항입니다 시작 위치에서 찾을 n번째 발생. 기본적으로 1입니다.
instr(INPUT, SUBSTRING, START_POSITION, OCCURRENCE) instr("adobe.com", "com") 6
교체 원래 문자열에 있는 경우 검색 문자열을 바꿉니다.
  • 입력: 필수 여부 입력 문자열입니다.
  • TO_FIND: 필수 여부 입력 내에서 찾을 문자열입니다.
  • TO_REPLACE: 필수 여부 "TO_FIND" 내의 값을 대체할 문자열입니다.
replacestor(INPUT, TO_FIND, TO_REPLACE) replacestor("문자열 재테스트", "re", "replace") "문자열 바꾸기 테스트입니다."
substr 지정된 길이의 하위 문자열을 반환합니다.
  • 입력: 필수 여부 입력 문자열입니다.
  • START_INDEX: 필수 여부 하위 문자열이 시작되는 입력 문자열의 색인입니다.
  • 길이: 필수 여부 하위 문자열의 길이입니다.
substr(INPUT, START_INDEX, LENGTH) substr("This is a substring test", 7, 8) "subst"
lower/lower
lcase
문자열을 소문자로 변환.
  • 입력: 필수 여부 소문자로 변환됩니다.
lower(입력) lower("HeO")
lcase("HeO")
"hello"
upper /
구루아제
문자열을 대문자로 변환.
  • 입력: 필수 여부 대문자로 변환할 문자열입니다.
upper(입력) upper("HeO")
ucase("HeO")
"HELLO"
split 구분 기호로 입력 문자열을 분할합니다. 다음 구분 기호 요구 사항 도망치다 \: \. 여러 구분 기호를 포함하는 경우 문자열이 다음 순서로 분할됩니다 임의 문자열에 있는 구분 기호로 묶습니다.
  • 입력: 필수 여부 분할할 입력 문자열입니다.
  • 구분 기호: 필수 여부 입력을 분할하는 데 사용되는 문자열입니다.
split(INPUT, SEPARATOR) split("Hello world", " ") ["Hello", "world"]
가입 구분 기호를 사용하여 개체 목록을 연결합니다.
  • 구분 기호: 필수 여부 개체를 조인하는 데 사용할 문자열입니다.
  • 개체: 필수 여부 조인할 문자열의 배열입니다.
join(SEPARATOR, [OBJECTS]) join(" ", to_array(true, "Hello", "world")) "Hello world"
lpad 문자열의 왼쪽에 지정된 다른 문자열을 패드합니다.
  • 입력: 필수 여부 그 끈은 패딩될 것이다. 이 문자열은 null일 수 있습니다.
  • 카운트: 필수 여부 패딩할 문자열 크기입니다.
  • 패딩: 필수 여부 입력을 패딩하는 문자열입니다. null이거나 비어 있으면 단일 공백으로 처리됩니다.
lpad(입력, 카운트, 패딩) lpad("bat", 8, "yz") "yzyzybat"
rpad 문자열의 오른쪽을 지정된 다른 문자열로 패드합니다.
  • 입력: 필수 여부 그 끈은 패딩될 것이다. 이 문자열은 null일 수 있습니다.
  • 카운트: 필수 여부 패딩할 문자열 크기입니다.
  • 패딩: 필수 여부 입력을 패딩하는 문자열입니다. null이거나 비어 있으면 단일 공백으로 처리됩니다.
rpad(입력, 카운트, 패딩) rpad("bat", 8, "yz") "batyzyzy"
왼쪽 지정된 문자열의 첫 "n" 문자를 가져옵니다.
  • 문자열: 필수 여부 에 대한 첫 번째 "n" 문자를 가져오는 문자열입니다.
  • 카운트: 필수 여부​문자열에서 가져올 "n" 문자.
left(STRING, COUNT) left("abcde", 2) "ab"
오른쪽 지정된 문자열의 마지막 "n" 문자를 가져옵니다.
  • 문자열: 필수 여부 에 대한 마지막 "n" 문자를 가져오는 문자열입니다.
  • 카운트: 필수 여부​문자열에서 가져올 "n" 문자.
right(STRING, COUNT) right("abcde", 2) "de"
ltrim 문자열 시작 부분에서 공백을 제거합니다.
  • 문자열: 필수 여부 공백을 제거할 문자열입니다.
ltrim(STRING) ltrim(" hello") "hello"
rtrim 문자열 끝에서 공백을 제거합니다.
  • 문자열: 필수 여부 공백을 제거할 문자열입니다.
rtrim(STRING) rtrim("hello") "hello"
trim 문자열의 시작과 끝에서 공백을 제거합니다.
  • 문자열: 필수 여부 공백을 제거할 문자열입니다.
trim(STRING) trim(" hello ") "hello"
다음과 같음 두 문자열을 비교하여 동일한지 확인합니다. 이 함수는 대/소문자를 구분합니다.
  • 문자열1: 필수 여부 비교할 첫 번째 문자열입니다.
  • 문자열2: 필수 여부 비교할 두 번째 문자열입니다.
문자열1​.equals( ​문자열2) "string1"​을 참조하십시오.equals ​("STRING1") false
equalsIgnoreCase 두 문자열을 비교하여 동일한지 확인합니다. 이 함수는 not 대/소문자를 구분합니다.
  • 문자열1: 필수 여부 비교할 첫 번째 문자열입니다.
  • 문자열2: 필수 여부 비교할 두 번째 문자열입니다.
문자열1​.equalsIgnoreCase ​(STRING2) "string1"​을 참조하십시오.equalsIgnoreCase ​("STRING1) true

정규 표현식 함수

함수 설명 매개 변수 구문 표현식 샘플 출력
extract_regex 정규 표현식을 기반으로 입력 문자열에서 그룹을 추출합니다.
  • 문자열: 필수 여부 그룹을 추출하는 문자열입니다.
  • REGEX: 필수 여부 그룹을 일치시킬 정규 표현식입니다.
extract_regex(STRING, REGEX) extract_regex ​("E259,E259B_009,1_1" ​, "() [,]+),[,]*,([^,]+)") ["E259,E259B_009,1_1", "E259", "1_1"]
matches_regex 문자열이 입력된 정규 표현식과 일치하는지 확인합니다.
  • 문자열: 필수 여부 확인하는 문자열이 정규 표현식과 일치합니다.
  • REGEX: 필수 여부 비교하려는 정규 표현식입니다.
matches_regex(STRING, REGEX) matches_regex("E259,E259B_009,1_1", "([,]+),[,]*,([^,]+)") true

해시 함수

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
sha1 입력을 가져오고 SHA-1(보안 해시 알고리즘 1)을 사용하여 해시 값을 생성합니다.
  • 입력: 필수 여부 해시할 일반 텍스트입니다.
  • CHARSET: 선택 사항입니다 문자 집합의 이름입니다. 가능한 값에는 UTF-8, UTF-16, ISO-8859-1 및 US-ASCII가 포함됩니다.
sha1(입력, CHARSET) sha1("my text", "UTF-8") c3599c11e47719df18a24 48690840c5dfcce3c80
sha256 입력을 가져오고 보안 해시 알고리즘 256(SHA-256)을 사용하여 해시 값을 생성합니다.
  • 입력: 필수 여부 해시할 일반 텍스트입니다.
  • CHARSET: 선택 사항입니다 문자 집합의 이름입니다. 가능한 값에는 UTF-8, UTF-16, ISO-8859-1 및 US-ASCII가 포함됩니다.
sha256(입력, CHARSET) sha256("my text", "UTF-8") 7330d2b39ca35eaf4cb95fc846c21​ ee6a39af698154a83a586ee270a0d372104
sha512 입력을 가져오고 보안 해시 알고리즘 512(SHA-512)를 사용하여 해시 값을 생성합니다.
  • 입력: 필수 여부 해시할 일반 텍스트입니다.
  • CHARSET: 선택 사항입니다 문자 집합의 이름입니다. 가능한 값에는 UTF-8, UTF-16, ISO-8859-1 및 US-ASCII가 포함됩니다.
sha512(입력, CHARSET) sha512("my text", "UTF-8") a3d7e45a0d9be5fd4e4b9a3b8c9c2163c21ef708bf11b4232bb21d2a8704ada2cdcd7b367dd078a5c908cfe377aceb107a7f7f7a7f8f4f8a4f8f8f8a4f8f8f8a4f8f8f8a4f8a4f8f 68a8fd24d16
md5 입력을 가져오고 MD5를 사용하여 해시 값을 생성합니다.
  • 입력: 필수 여부 해시할 일반 텍스트입니다.
  • CHARSET: 선택 사항입니다 문자 집합의 이름입니다. 가능한 값에는 UTF-8, UTF-16, ISO-8859-1 및 US-ASCII가 포함됩니다.
md5(입력, CHARSET) md5("my text", "UTF-8") d3b96ce8c9fb4​e9bd0198d03ba6852c7
crc32 입력을 받으면 CRC(순환 중복 검사) 알고리즘을 사용하여 32비트 순환 코드를 생성합니다.
  • 입력: 필수 여부 해시할 일반 텍스트입니다.
  • CHARSET: 선택 사항입니다 문자 집합의 이름입니다. 가능한 값에는 UTF-8, UTF-16, ISO-8859-1 및 US-ASCII가 포함됩니다.
crc32(입력, 문자) crc32("my text", "UTF-8") 8df92e80

URL 함수

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
get_url_protocol 지정된 URL에서 프로토콜을 반환합니다. 입력이 잘못된 경우 null을 반환합니다.
  • URL: 필수 여부 프로토콜을 추출해야 하는 URL입니다.
get_url_protocol​(URL) get_url_protocol("https://platform ​ .adobe.com/home") https
get_url_host 주어진 URL의 호스트를 반환합니다. 입력이 잘못된 경우 null을 반환합니다.
  • URL: 필수 여부 호스트를 추출해야 하는 URL입니다.
get_url_host ​(URL) get_url_host ​("https://platform ​ .adobe.com/home") platform.adobe.com
get_url_port 지정된 URL의 포트를 반환합니다. 입력이 잘못된 경우 null을 반환합니다.
  • URL: 필수 여부 포트를 추출해야 하는 URL입니다.
get_url_port(URL) get_url_port ​("sftp://example.com//home/ ​ joe/employee.csv") 22
get_url_path 지정된 URL의 경로를 반환합니다. 기본적으로 전체 경로가 반환됩니다.
  • URL: 필수 여부 경로를 추출해야 하는 URL입니다.
  • FULL_PATH: 선택 사항입니다 전체 경로가 반환되는지 여부를 결정하는 부울 값입니다. false로 설정하면 경로의 끝만 반환됩니다.
get_url_​path(URL, FULL_PATH) get_url_​path("sftp://example.com// ​ home/joe/employee.csv") "//home/joe/ ​ employee.csv"
get_url_query_str 쿼리 문자열 이름 및 쿼리 문자열 값의 맵으로 주어진 URL의 쿼리 문자열을 반환합니다.
  • URL: 필수 여부 쿼리 문자열을 가져오려는 URL입니다.
  • 앵커: 필수 여부 쿼리 문자열의 앵커로 수행할 작업을 결정합니다. 다음 세 값 중 하나일 수 있습니다. "keep", "remove" 또는 "append".

    값이 "keep"이면 앵커가 반환된 값에 연결됩니다.
    값이 "remove"이면 반환된 값에서 앵커가 제거됩니다.
    값이 "append"이면 앵커는 별도의 값으로 반환됩니다.
get_url_query_str​(URL, ANCHOR) get_url_query_str ​("foo://example.com:8042 ​/over/there?name= ​ ferret#nos", "retain")
get_url_query_str ​("foo://example.com:8042 ​/over/there?name= ​ ferret#nose", "remove")
get_url_query_str ​("foo://example.com​:8042/over/there?name=ferret#nos", "append")
{"name": "ferret#nose"}
{"name": "ferret"}
{"name": "ferret", "_anchor_": "nose"}

날짜 및 시간 함수

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오. 에 대한 추가 정보 date 함수는 데이터 형식 처리 안내서.

함수 설명 매개 변수 구문 표현식 샘플 출력
now 현재 시간을 검색합니다. now() now() 2021-10-26T10:10:24Z
timestamp 현재 Unix 시간을 검색합니다. timestamp() timestamp() 1571850624571
포맷 입력 날짜를 지정된 형식에 따라 형식을 지정합니다.
  • 날짜: 필수 여부 형식을 지정할 입력 날짜(ZoneDateTime 개체)입니다.
  • 형식: 필수 여부 날짜를 변경할 형식입니다.
format(날짜, 형식) 형식(2019-10-23T11:24:00+00:00, "yyyy-MM-dd HH:mm:ss") 2019-10-23 11:24:35
dformat 지정된 형식에 따라 타임스탬프를 날짜 문자열로 변환합니다.
  • 타임스탬프: 필수 여부 포맷할 타임스탬프입니다. 밀리초 단위로 기록됩니다.
  • 형식: 필수 여부 타임스탬프를 만들려는 형식입니다.
DFORMAT(TIMESTAMP, FORMAT) dformat(1571829875000, "yyyy-MM-dd'T'HH:mm:ss.SSSX") 2019-10-23T11:24:35.000Z
날짜 날짜 문자열을 ZoneDateTime 개체(ISO 8601 형식)로 변환합니다.
  • 날짜: 필수 여부 날짜를 나타내는 문자열입니다.
  • 형식: 필수 여부 소스 날짜 형식을 나타내는 문자열입니다.참고: 이 기능은 not 날짜 문자열을 변환하려는 형식을 나타냅니다.
  • DEFAULT_DATE: 필수 여부 제공된 날짜가 null인 경우 기본 날짜가 반환됩니다.
date(DATE, FORMAT, DEFAULT_DATE) date("2019-10-23 11:24", "yyyy-MM-dd HH:mm", now()) 2019-10-23T11:24:00Z
날짜 날짜 문자열을 ZoneDateTime 개체(ISO 8601 형식)로 변환합니다.
  • 날짜: 필수 여부 날짜를 나타내는 문자열입니다.
  • 형식: 필수 여부 소스 날짜 형식을 나타내는 문자열입니다.참고: 이 기능은 not 날짜 문자열을 변환하려는 형식을 나타냅니다.
date(날짜, 형식) date("2019-10-23 11:24", "yyyy-MM-dd HH:mm") 2019-10-23T11:24:00Z
날짜 날짜 문자열을 ZoneDateTime 개체(ISO 8601 형식)로 변환합니다.
  • 날짜: 필수 여부 날짜를 나타내는 문자열입니다.
date(날짜) date("2019-10-23 11:24") "2019-10-23T11:24:00Z"
date_part 날짜의 부분을 검색합니다. 지원되는 구성 요소 값은 다음과 같습니다.

"year"
"yyyy"
"yy"

"quarter"
"qq"
"q"

"month"
"mm"
"m"

"dayofyear"
"dy"
"y"

"day"
"dd"
"d"

"week"
"ww"
"w"

"weekday"
"dw"
"w"

"hour"
"hh"
"hh24"
"hh12"

"minute"
"mi"
"n"

"second"
"ss"
"s"

"ms"
"ms"
  • 구성 요소: 필수 여부 날짜의 부분을 나타내는 문자열입니다.
  • 날짜: 필수 여부 표준 형식으로 된 날짜입니다.
date_​part(COMPONENT, DATE) date_part("MM", date("2019-10-17 11":55:12형) 10
set_date_part 지정된 날짜에서 구성 요소를 바꿉니다. 다음 구성 요소가 수락됩니다.

"year"
"yyyy"
"yy"

"month"
"mm"
"m"

"day"
"dd"
"d"

"hour"
"hh"

"minute"
"mi"
"n"

"second"
"ss"
"s"
  • 구성 요소: 필수 여부 날짜의 부분을 나타내는 문자열입니다.
  • 값: 필수 여부 지정된 날짜에 대한 구성 요소에 대해 설정할 값입니다.
  • 날짜: 필수 여부 표준 형식으로 된 날짜입니다.
set_date_​part(COMPONENT, VALUE, DATE) set_date_part("m", 4, date("2016-11-09T11:44:44.797형) "2016-04-09T11:44:44Z"
make_date_time 부품으로부터 날짜를 생성합니다. make_timestamp를 사용하여 이 함수를 유도할 수도 있습니다.
  • 년: 필수 여부 그 해는 네 자리 숫자로 기록되었다.
  • 월: 필수 여부 그 달. 허용되는 값은 1~12입니다.
  • 일: 필수 여부 오늘 허용되는 값은 1~31입니다.
  • 시간: 필수 여부 시간 허용되는 값은 0~23입니다.
  • 분: 필수 여부 분 허용되는 값은 0~59입니다.
  • 나노초: 필수 여부 나노 초 값입니다. 허용되는 값은 0에서 999999999.
  • 시간대: 필수 여부 날짜 시간 시간대.
make_date_​time(YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, NANOSECOND, TIMEZONE) make_date_time​(2019, 10, 17, 11, 55, 12, 999, "America/Los_Angeles") 2019-10-17T11:55:12Z
zone_date_to_utc 시간대의 날짜를 UTC의 날짜로 변환합니다.
  • 날짜: 필수 여부 변환하려는 날짜입니다.
zone_date_to_​utc(DATE) zone_date_to_utc​(2019-10-17T11:55:​12 PST 2019-10-17T19:55:12Z
zone_date_to_zone 날짜를 하나의 시간대에서 다른 시간대로 변환합니다.
  • 날짜: 필수 여부 변환하려는 날짜입니다.
  • 영역: 필수 여부 날짜를 변환하려는 시간대
zone_date_to_​zone(DATE, ZONE) zone_date_to_utc​(now(), "Europe/Paris") 2021-10-26T15:43:59Z

계층 - 객체

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
is_empty 개체가 비어 있는지 여부를 확인합니다.
  • 입력: 필수 여부 확인하려는 개체가 비어 있습니다.
is_empty(INPUT) is_empty([1, null, 2, 3]) false
array_to_object 개체 목록을 만듭니다.
  • 입력: 필수 여부 키 및 배열 쌍의 그룹입니다.
array_to_object(INPUT) arrays_to_objects('sku', explode("id1|id2", '\\|'), 'price', [22.5,14.35]) [{ "sku": "id1", "price": 22.5 }, { "sku": "id2", "price": 14.35 }]
to_object 제공된 플랫 키/값 쌍을 기반으로 개체를 만듭니다.
  • 입력: 필수 여부 키/값 쌍의 플랫 목록입니다.
to_object(INPUT) to_​object("firstName", "John", "lastName", "Doe") {"firstName": "John", "lastName": "Doe"}
str_to_object 입력 문자열에서 개체를 만듭니다.
  • 문자열: 필수 여부 개체를 만들기 위해 구문 분석되는 문자열입니다.
  • VALUE_DELIMITER: 선택 사항입니다 값과 필드를 구분하는 구분 기호입니다. 기본 구분 기호는 다음과 같습니다 :.
  • FIELD_DELIMITER: 선택 사항입니다 필드 값 쌍을 구분하는 구분 기호입니다. 기본 구분 기호는 다음과 같습니다 ,.
str_to_​object(STRING, VALUE_DELIMITER, FIELD_DELIMITER) 참고: 를 사용할 수 있습니다 get() 함수 및 str_to_object() 를 입력하여 문자열의 키에 대한 값을 검색합니다.
  • 예 #1: str_to_object("firstName - John ; lastName - ; - 123 345 7890", "-", ";")
  • 예 #2: str_to_object("firstName - John ; lastName - ; phone - 123 456 7890", "-", ";").get("firstName")
  • 예 #1:{"firstName": "John", "lastName": "Doe", "phone": "123 456 7890"}
  • 예 #2: “John”
contains_key 개체가 소스 데이터 내에 있는지 확인합니다. 참고: 이 함수는 사용되지 않는 is_set() 함수 위에 있어야 합니다.
  • 입력: 필수 여부 소스 데이터 내에 있는 경우 확인할 경로입니다.
contains_key(INPUT) contains_key("evars.evar.field1") true
무효 속성 값을 로 설정합니다. null. 대상 스키마에 필드를 복사하지 않으려는 경우 사용해야 합니다. nothing() nothing() null
get_keys 키/값 쌍을 구문 분석하고 모든 키를 반환합니다.
  • 개체: 필수 여부 키를 추출할 객체입니다.
get_keys(OBJECT) get_keys({"book1"): "오만과 편견", "책2" "1984"}) ["book1", "book2"]
get_values 키/값 쌍을 구문 분석하고 지정된 키를 기반으로 문자열 값을 반환합니다.
  • 문자열: 필수 여부 구문 분석할 문자열입니다.
  • 키: 필수 여부 값을 추출해야 하는 키입니다.
  • VALUE_DELIMITER: 필수 여부 필드와 값을 구분하는 구분 기호입니다. 다음의 경우 null 또는 빈 문자열이 제공되면 이 값은 :.
  • FIELD_DELIMITER: 선택 사항입니다 필드 및 값 쌍을 구분하는 구분 기호입니다. 다음의 경우 null 또는 빈 문자열이 제공되면 이 값은 ,.
get_values(STRING, KEY, VALUE_DELIMITER, FIELD_DELIMITER) get_values("firstName - John , lastName - Cena , phone - 555 420 8692", "firstName", "-", ",")

객체 복사 기능에 대한 자세한 내용은 섹션을 참조하십시오 아래.

계층 - 배열

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
coalesce 지정된 배열에서 null이 아닌 첫 번째 개체를 반환합니다.
  • 입력: 필수 여부 null이 아닌 첫 번째 개체를 찾을 배열입니다.
coalesce(입력) coalesce(null, null, null, "first", null, "second") "first"
첫 번째 지정된 배열의 첫 번째 요소를 검색합니다.
  • 입력: 필수 여부 의 첫 번째 요소를 찾을 배열입니다.
first(입력) first("1", "2", "3") "1"
마지막 지정된 배열의 마지막 요소를 검색합니다.
  • 입력: 필수 여부 의 마지막 요소를 찾을 배열입니다.
last(INPUT) last("1", "2", "3") "3"
add_to_array 배열 끝에 요소를 추가합니다.
  • 어레이: 필수 여부 요소를 추가할 배열입니다.
  • 값: 배열에 추가할 요소입니다.
add_to_​array(ARRAY, VALUES) add_to_​ array(['a', 'b'], 'c', 'd') ['a', 'b', 'c', 'd']
join_arrays 배열을 서로 결합합니다.
  • 어레이: 필수 여부 요소를 추가할 배열입니다.
  • 값: 상위 배열에 추가할 배열입니다.
join_​arrays(ARRAY, VALUES) join_arrays​(['a', 'b'], ['c'], ['d', 'e']) ['a', 'b', 'c', 'd', 'e']
to_array 입력 목록을 가져와 배열로 변환합니다.
  • INCLUDE_NULLS: 필수 여부 응답 배열에 null을 포함할지 여부를 나타내는 부울 값입니다.
  • 값: 필수 여부 배열로 변환할 요소입니다.
to_​array(INCLUDE_NULLS, VALUES) to_array(false, 1, null, 2, 3) [1, 2, 3]
size_of 입력 크기를 반환합니다.
  • 입력: 필수 여부 크기를 찾으려는 개체입니다.
size_of(INPUT) size_of([1, 2, 3, 4]) 4
upsert_array_append 이 함수는 전체 입력 배열의 모든 요소를 프로필의 배열 끝에 추가하는 데 사용됩니다. 이 함수는 전용 업데이트 중에 적용할 수 있습니다. 삽입 문맥에서 사용하는 경우 이 함수는 입력을 그대로 반환합니다.
  • 어레이: 필수 여부 프로필에 배열을 추가할 배열입니다.
upsert_array_append(ARRAY) upsert_array_append([123, 456]) [123, 456]
upsert_array_replace 이 함수는 배열의 요소를 바꾸는 데 사용됩니다. 이 함수는 전용 업데이트 중에 적용할 수 있습니다. 삽입 문맥에서 사용하는 경우 이 함수는 입력을 그대로 반환합니다.
  • 어레이: 필수 여부 프로필에서 배열을 바꿀 배열입니다.
upsert_array_replace(ARRAY) upsert_array_replace([123, 456], 1) [123, 456]

논리 연산자

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
decode 키 및 배열로 병합된 키 값 쌍 목록이 주어지면 키가 있으면 값을 반환하거나 배열에 있는 경우 기본값을 반환합니다.
  • 키: 필수 여부 일치하는 키입니다.
  • OPTIONS: 필수 여부 키/값 쌍의 병합된 배열입니다. 선택적으로, 끝에 기본값을 지정할 수 있습니다.
decode(KEY, OPTIONS) decode(stateCode, "ca", "California", "pa", "Pennsylvania", "N/A") 제공된 stateCode가 "ca", "California"인 경우.
만약 주코드가 "pa", "Pennsylvania" 라면.
stateCode가 다음과 일치하지 않으면 "N/A".
iif 지정된 부울 표현식을 평가하고 결과를 기반으로 지정된 값을 반환합니다.
  • 표현식: 필수 여부 평가 중인 부울 식입니다.
  • TRUE_VALUE: 필수 여부 표현식이 true로 평가되는 경우 반환되는 값입니다.
  • FALSE_VALUE: 필수 여부 표현식이 false로 평가되는 경우 반환되는 값입니다.
iif(표현식, TRUE_VALUE, FALSE_VALUE) iif("s".equalsIgnoreCase("S"), "True", "False") "True"

집계

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
min 지정된 인수의 최소값을 반환합니다. 자연어 순서를 사용합니다.
  • OPTIONS: 필수 여부 서로 비교할 수 있는 하나 이상의 개체입니다.
min(OPTIONS) min(3, 1, 4) 1
max 지정된 인수의 최대 개수를 반환합니다. 자연어 순서를 사용합니다.
  • OPTIONS: 필수 여부 서로 비교할 수 있는 하나 이상의 개체입니다.
max(OPTIONS) 최대(3, 1, 4) 4

유형 전환

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
to_bigint 문자열을 BigInteger로 변환합니다.
  • 문자열: 필수 여부 BigInteger로 변환할 문자열입니다.
to_bigint(STRING) to_bigint​("1000000.34") 1000000.34
to_decimal 문자열을 Double로 변환.
  • 문자열: 필수 여부 Double로 변환할 문자열입니다.
to_decimal(STRING) to_decimal("20.5") 20.5
to_float 문자열을 Float로 변환.
  • 문자열: 필수 여부 Float로 변환할 문자열입니다.
to_float(STRING) to_float("12.3456") 12.34566
to_integer 문자열을 정수로 변환.
  • 문자열: 필수 여부 정수로 변환할 문자열입니다.
to_integer(STRING) to_integer("12") 12

JSON 함수

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
json_to_object 지정된 문자열에서 JSON 컨텐츠를 deserialize합니다.
  • 문자열: 필수 여부 deserialize할 JSON 문자열입니다.
json_to_​object(STRING) json_to_object ​({"info":{"firstName":"John","lastName": "Doe"}) JSON을 나타내는 객체입니다.

특별 작업

노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
uuid /
guid
의사 랜덤 ID를 생성합니다. uuid()
guid()
uuid()
guid()
7c0267d2-bb74-4e1a-9275-3bf4fccda5f4
c7016dc7-3163-43f7-afc7-2e1c9c206333

사용자 에이전트 함수

아래 표에 포함된 사용자 에이전트 함수는 다음 값 중 하나를 반환할 수 있습니다.

  • 휴대폰 - 작은 화면이 있는 모바일 장치(일반적으로 < 7")
  • 모바일 - 아직 식별되지 않은 모바일 장치입니다. 이 모바일 장치는 eReader, 태블릿, 휴대폰, 시계 등이 될 수 있습니다.
노트

표의 전체 내용을 보려면 왼쪽/오른쪽으로 스크롤하십시오.

함수 설명 매개 변수 구문 표현식 샘플 출력
ua_os_name 사용자 에이전트 문자열에서 운영 체제 이름을 추출합니다.
  • USER_AGENT: 필수 여부 사용자 에이전트 문자열입니다.
ua_os_​name(USER_AGENT) ua_os_​name("Mozilla/5.0(iPhone; Mac OS X와 같은 CPU iPhone OS 5_1_1) AppleWebKit/534.46(Gecko와 같은 KHTML) 버전/5.1 Mobile/9B206 Safari/7534.48.3") iOS
ua_os_version_major 사용자 에이전트 문자열에서 운영 체제의 주요 버전을 추출합니다.
  • USER_AGENT: 필수 여부 사용자 에이전트 문자열입니다.
ua_os_version_major​(USER_AGENT) ua_os_version_major ​ s("Mozilla/5.0"(iPhone; Mac OS X와 같은 CPU iPhone OS 5_1_1) AppleWebKit/534.46(Gecko와 같은 KHTML) 버전/5.1 Mobile/9B206 Safari/7534.48.3") iOS 5
ua_os_version 사용자 에이전트 문자열에서 운영 체제의 버전을 추출합니다.
  • USER_AGENT: 필수 여부 사용자 에이전트 문자열입니다.
ua_os_​version(USER_AGENT) ua_os_​version("Mozilla/5.0(iPhone; Mac OS X와 같은 CPU iPhone OS 5_1_1) AppleWebKit/534.46(Gecko와 같은 KHTML) 버전/5.1 Mobile/9B206 Safari/7534.48.3") 5.1.1
ua_os_name_version 사용자 에이전트 문자열에서 운영 체제의 이름과 버전을 추출합니다.
  • USER_AGENT: 필수 여부 사용자 에이전트 문자열입니다.
ua_os_name_​version(USER_AGENT) ua_os_name_version ​("Mozilla/5.0(iPhone; Mac OS X와 같은 CPU iPhone OS 5_1_1) AppleWebKit/534.46(Gecko와 같은 KHTML) 버전/5.1 Mobile/9B206 Safari/7534.48.3") iOS 5.1.1
ua_agent_version 사용자 에이전트 문자열에서 에이전트 버전을 추출합니다.
  • USER_AGENT: 필수 여부 사용자 에이전트 문자열입니다.
ua_agent_​version(USER_AGENT) ua_agent_version ​("Mozilla/5.0(iPhone; Mac OS X와 같은 CPU iPhone OS 5_1_1) AppleWebKit/534.46(Gecko와 같은 KHTML) 버전/5.1 Mobile/9B206 Safari/7534.48.3") 5.1
ua_agent_version_major 사용자 에이전트 문자열에서 에이전트 이름 및 주 버전을 추출합니다.
  • USER_AGENT: 필수 여부 사용자 에이전트 문자열입니다.
ua_agent_version_major​(USER_AGENT) ua_agent_version_major ​("Mozilla/5.0(iPhone; Mac OS X와 같은 CPU iPhone OS 5_1_1) AppleWebKit/534.46(Gecko와 같은 KHTML) 버전/5.1 Mobile/9B206 Safari/7534.48.3") Safari 5
ua_agent_name 사용자 에이전트 문자열에서 에이전트 이름을 추출합니다.
  • USER_AGENT: 필수 여부 사용자 에이전트 문자열입니다.
ua_agent_​name(USER_AGENT) ua_agent_​name("Mozilla/5.0(iPhone; Mac OS X와 같은 CPU iPhone OS 5_1_1) AppleWebKit/534.46(Gecko와 같은 KHTML) 버전/5.1 Mobile/9B206 Safari/7534.48.3") Safari
ua_device_class 사용자 에이전트 문자열에서 장치 클래스를 추출합니다.
  • USER_AGENT: 필수 여부 사용자 에이전트 문자열입니다.
ua_device_​class(USER_AGENT) ua_device_class ​("Mozilla/5.0(iPhone; Mac OS X와 같은 CPU iPhone OS 5_1_1) AppleWebKit/534.46(Gecko와 같은 KHTML) 버전/5.1 Mobile/9B206 Safari/7534.48.3") 전화

개체 복사

소스 객체가 XDM의 객체에 매핑되면 객체 복사 기능이 자동으로 적용됩니다. 사용자로부터 추가 작업이 필요하지 않습니다.

객체 복사 기능을 사용하여 매핑을 변경하지 않고 객체의 속성을 자동으로 복사할 수 있습니다. 예를 들어 소스 데이터의 구조가 다음과 같은 경우

address{
        line1: 4191 Ridgebrook Way,
        city: San Jose,
        state: California
        }

및 의 XDM 구조:

addr{
    addrLine1: 4191 Ridgebrook Way,
    city: San Jose,
    state: California
    }

그러면 매핑이 다음과 같이 됩니다.

address -> addr
address.line1 -> addr.addrLine1

위의 예에서 citystate 속성은 런타임에 자동으로 수집되므로 address 개체가 addr. 다음을 만들 경우 line2 xdm 구조의 속성과 입력 데이터에는 line2 에서 address 수동으로 매핑을 변경할 필요 없이 개체를 자동으로 수집할 수도 있습니다.

자동 매핑이 작동하려면 다음 전제 조건을 충족해야 합니다.

  • 부모 수준 개체를 매핑해야 합니다.
  • XDM 스키마에서 새 속성을 만들어야 합니다.
  • 새 속성에는 소스 스키마와 XDM 스키마에 일치하는 이름이 있어야 합니다.

사전 요구 사항이 충족되지 않으면 데이터 준비를 사용하여 소스 스키마를 XDM 스키마에 수동으로 매핑해야 합니다.

이 페이지에서는