データ準備のマッピング機能

データ準備関数を使用すると、ソースフィールドに入力された値に基づいて値を計算および計算できます。

フィールド

フィールド名には、任意の法的識別子(Unicode 文字と数字の無制限のシーケンス、文字で始まる、ドル記号)を使用できます$)、またはアンダースコア(_)に設定します。 変数名でも大文字と小文字が区別されます。

フィールド名がこの規則に従わない場合は、フィールド名をでラップする必要があります ${}. 例えば、フィールド名が「名」または「First.Name」の場合、名前はのようにラップされる必要があります。 ${First Name} または ${First\.Name} それぞれ。

TIP
階層を操作する際に、子属性にピリオド(.)がある場合は、バックスラッシュ(\)を使用して特殊文字をエスケープする必要があります。詳しくは、のガイドを参照してください。 特殊文字のエスケープ.

フィールド名が いずれか 次の予約キーワードのうち、でラップする必要があります ${}{}:

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

また、予約済みキーワードには、このページにリストされているマッパー関数も含まれます。

サブフィールド内のデータには、ドット表記を使用してアクセスできます。 例えば、 name オブジェクト、にアクセスするには firstName フィールド、使用する name.firstName.

関数のリスト

次の表に、サンプル式とその結果の出力を含む、サポートされるすべてのマッピング関数を示します。

文字列関数 string

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
concat
指定された文字列を連結します。
  • STRING:連結される文字列。
concat (STRING_1, STRING_2)
concat("Hi, ", "there", "!")
"Hi, there!"
explode
正規表現に基づいて文字列を分割し、部分の配列を返します。 オプションで、正規表現を含めて文字列を分割できます。 デフォルトでは、分割は「,」に解決されます。 次の区切り文字 必要性 付き合って逃げる \: +, ?, ^, |, ., [, (, {, ), *, $, \ 区切り文字として複数の文字を含めた場合、区切り文字は複数の文字の区切り文字として扱われます。
  • 文字列: 必須 分割する必要がある文字列。
  • 正規表現: オプション 文字列の分割に使用できる正規表現。
explode (STRING, REGEX)
explode("Hi, there!", " ")
["Hi,", "there"]
instr
サブ文字列の場所/インデックスを返します。
  • 必要情報: 必須 検索される文字列。
  • 部分文字列: 必須 文字列内で検索される部分文字列。
  • START_POSITION: オプション 文字列内で検索を開始する場所。
  • 発生件数: オプション 開始位置から検索する n 番目のオカレンス。 デフォルトは 1 です。
instr (INPUT, SUBSTRING, START_POSITION, OCCURRENCE)
instr ("adobe.com", "com")
6
replacestr
元の文字列に検索文字列が存在する場合は、その文字列を置き換えます。
  • 必要情報: 必須 入力文字列。
  • TO_FIND: 必須 入力内で検索する文字列。
  • TO_REPLACE: 必須 「TO_FIND」内の値を置換する文字列。
replacestr (INPUT, TO_FIND, TO_REPLACE)
replacestr("This is a string re test", "re", "replace")
"This is a string replace test"
substr
指定された長さのサブ文字列を返します。
  • 必要情報: 必須 入力文字列。
  • START_INDEX: 必須 部分文字列が開始する入力文字列のインデックス。
  • 長さ: 必須 部分文字列の長さ。
substr (INPUT, START_INDEX, LENGTH)
substr("This is a substring test", 7, 8)
"サブセット"
lower /
lcase
文字列を小文字に変換します。
  • 必要情報: 必須 小文字に変換される文字列。
lower (入力)
lower("HeLLo")
lcase("HeLLo")
"hello"
upper /
ucase
文字列を大文字に変換します。
  • 必要情報: 必須 大文字に変換される文字列。
upper (INPUT)
upper("HeLLo")
ucase("HeLLo")
"HELLO"
split
区切り文字で入力文字列を分割します。 次の区切り記号 ニーズ 付き合って逃げる \: \. 複数の区切り文字を含めると、文字列はで分割されます いずれか の区切り文字が文字列に存在します。 注意: この関数は、区切り文字の存在に関係なく、文字列から null 以外のインデックスのみを返します。 結果の配列ですべてのインデックス(null を含む)が必要な場合は、「explode」関数を使用します。
  • 必要情報: 必須 分割される入力文字列。
  • 区切り記号: 必須 入力を分割するために使用される文字列。
split (INPUT, SEPARATOR)
split("Hello world", " ")
["Hello", "world"]
join
区切り記号を使用してオブジェクトのリストを結合します。
  • 区切り記号: 必須 オブジェクトの結合に使用する文字列。
  • オブジェクト: 必須 結合される文字列の配列。
join(SEPARATOR, [OBJECTS])
join(" ", to_array(true, "Hello", "world"))
"Hello world"
lpad
文字列の左側を指定された他の文字列でパディングします。
  • 必要情報: 必須 パディングされる文字列。 この文字列は null にできます。
  • カウント: 必須 パドアウトする文字列のサイズ。
  • パディング: 必須 入力を埋め込む文字列。 null または空の場合は、1 つのスペースとして扱われます。
lpad (INPUT, COUNT, PADDING)
lpad ("bat", 8, "yz")
「yzyzybat」
rpad
文字列の右側を指定された他の文字列でパディングします。
  • 必要情報: 必須 パディングされる文字列。 この文字列は null にできます。
  • カウント: 必須 パドアウトする文字列のサイズ。
  • パディング: 必須 入力を埋め込む文字列。 null または空の場合は、1 つのスペースとして扱われます。
rpad (INPUT, COUNT, PADDING)
rpad ("bat", 8, "yz")
「バチジー」
left
指定された文字列の最初の「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"
rtrim
文字列の末尾から空白を削除します。
  • 文字列: 必須 空白を削除する文字列。
rtrim (STRING)
rtrim ("hello ")
"hello"
trim
文字列の先頭と末尾から空白を削除します。
  • 文字列: 必須 空白を削除する文字列。
trim (STRING)
trim (" hello ")
"hello"
次と等しい
2 つの文字列を比較して、等しいかどうかを確認します。 この関数では大文字と小文字が区別されます。
  • STRING1: 必須 比較する最初の文字列。
  • STRING2: 必須 比較する 2 番目の文字列。
STRING1.​equals (​STRING2)
"string1"…​equals​("STRING1")
equalsIgnoreCase
2 つの文字列を比較して、等しいかどうかを確認します。 この関数は ではない 大文字と小文字を区別します。
  • STRING1: 必須 比較する最初の文字列。
  • STRING2: 必須 比較する 2 番目の文字列。
STRING1.​equalsIgnoreCase​(STRING2)
"string1"…​equalsIgnoreCase​("STRING1)
true

正規表現関数

関数
説明
パラメーター
構文
サンプル出力
extract_regex
正規表現に基づいて、入力文字列からグループを抽出します。
  • 文字列: 必須 グループを抽出する文字列。
  • 正規表現: 必須 グループと照合する正規表現。
extract_regex (STRING, REGEX)
extract_regex​("E259,E259B_009,1_1"​, "([,]+)、[,]*,([^,]+)")
["E259,E259B_009,1_1", "E259", "1_1"]
matches_regex
文字列が入力された正規表現と一致するかどうかを確認します。
  • 文字列: 必須 チェックする文字列は正規表現と一致します。
  • 正規表現: 必須 比較する正規表現。
matches_regex (STRING, REGEX)
matches_regex ("E259,E259B_009,1_1", "([,]+)、[,]*,([^,]+)")
true

ハッシュ関数 hashing

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
sha1
入力を受け取り、セキュアハッシュアルゴリズム 1 (SHA-1)を使用してハッシュ値を生成します。
  • 必要情報: 必須 ハッシュ化するプレーンテキスト。
  • 文字セット: オプション 文字セットの名前。 使用可能な値は、UTF-8、UTF-16、ISO-8859-1、US-ASCII です。
sha1 (入力,CHARSET)
sha1 ("my text", "UTF-8")
c3599c11e47719df18a24​48690840c5dfcce3c80
sha256
入力を受け取り、セキュアハッシュアルゴリズム 256 を使用してハッシュ値を生成します(SHA-256)。
  • 必要情報: 必須 ハッシュ化するプレーンテキスト。
  • 文字セット: オプション 文字セットの名前。 使用可能な値は、UTF-8、UTF-16、ISO-8859-1、US-ASCII です。
sha256 (入力,CHARSET)
sha256 ("my text", "UTF-8")
7330d2b39ca35eaf4cb95fc846c21​ee6a39af698154a83a586ee270a0d372104
sha512
入力を受け取り、セキュアハッシュアルゴリズム 512 を使用してハッシュ値を生成します(SHA-512)。
  • 必要情報: 必須 ハッシュ化するプレーンテキスト。
  • 文字セット: オプション 文字セットの名前。 使用可能な値は、UTF-8、UTF-16、ISO-8859-1、US-ASCII です。
sha512 (入力,CHARSET)
sha512 ("my text", "UTF-8")
a3d7e45a0d9be5fd4e4b9a3b8c9c2163c21ef​708bf11b4232bb21d2a8704ada2cdcd7b367dd0788a89​a5c908cfe377aceb1072a7b386d4d 2ff68a8fd24d16
md5
入力を受け取り、MD5 を使用してハッシュ値を生成します。
  • 必要情報: 必須 ハッシュ化するプレーンテキスト。
  • 文字セット: オプション 文字セットの名前。 使用可能な値は、UTF-8、UTF-16、ISO-8859-1、US-ASCII です。
md5 (入力,CHARSET)
md5 ("my text", "UTF-8")
d3b96ce8c9fb4​e9bd0198d03ba6852c7
crc32
入力に巡回冗長検査(CRC)アルゴリズムを使用して、32 ビットの巡回符号を生成します。
  • 必要情報: 必須 ハッシュ化するプレーンテキスト。
  • 文字セット: オプション 文字セットの名前。 使用可能な値は、UTF-8、UTF-16、ISO-8859-1、US-ASCII です。
crc32 (入力、文字セット)
crc32 ("my text", "UTF-8")
8df92e80

URL 関数 url

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
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。
  • アンカー: 必須 クエリ文字列内のアンカーで実行する処理を指定します。 「retain」、「remove」、「append」の 3 つの値のいずれかです。

    値が「retain」の場合、アンカーは返された値に添付されます。
    値が「削除」の場合、アンカーは戻り値から削除されます。
    値が「追加」の場合、アンカーは別の値として返されます。
get_url_query_str​(URL, ANCHOR)
get_url_query_str​("foo://example.com:8042​/over/there?name=​ferret#nose", "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#nose", "append")
{"name": "ferret#nose"}
{"name": "ferret"}
{"name": "ferret", "_anchor_": "nose"}
get_url_encoded
この関数は、URL を入力として受け取り、特殊文字を ASCII 文字に置換つまりエンコードします。 特殊文字の詳細については、 特殊文字のリスト このドキュメントの付録に記載されています。
  • URL: 必須 ASCII 文字で置換またはエンコードする特殊文字を含む入力 URL。
get_url_encoded (URL)
get_url_encoded ("https://example.com/partneralliance_asia-pacific_2022")
https%3A%2F%2Fexample.com%2Fpartneralliance_asia-pacific_2022
get_url_decoded
この関数は、URL を入力として受け取り、ASCII 文字を特殊文字にデコードします。 特殊文字の詳細については、 特殊文字のリスト このドキュメントの付録に記載されています。
  • URL: 必須 特殊文字にデコードする ASCII 文字を含む入力 URL。
get_url_decoded (URL)
get_url_decoded ("https%3A%2F%2Fexample.com%2Fpartneralliance_asia-pacific_2022")
https://example.com/partneralliance_asia-pacific_2022

日付および時間関数 date-and-time

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。 に関する詳細情報 date 関数は、の日付セクションにあります データフォーマット処理ガイド.
関数
説明
パラメーター
構文
サンプル出力
now
現在の時刻を取得します。
now()
now()
2021-10-26T10:10:24Z
timestamp
現在の Unix 時間を取得します。
timestamp()
timestamp()
1571850624571
format
指定された形式に従って入力日をフォーマットします。
  • 日付: 必須 書式設定する日付を ZonedDateTime オブジェクトとして入力します。
  • 形式: 必須 日付の変更先となる形式。
format (DATE, FORMAT)
format (2019-10-23T11:24:00+00:00、"yyyy-MM-dd HH:mm:ss ``)
2019-10-23 11:24:35
dformat
指定された形式に従ってタイムスタンプを日付文字列に変換します。
  • TIMESTAMP: 必須 書式設定するタイムスタンプ。 これはミリ秒単位で記述されます。
  • 形式: 必須 タイムスタンプを変換する形式。
dformat (TIMESTAMP, FORMAT)
dformat (1571829875000, "yyyy-MM-dd'T'HH:mm:ss.SSSX ``)
2019-10-23T11:24:35.000Z
date
日付文字列を ZonedDateTime オブジェクト(ISO 8601 形式)に変換します。
  • 日付: 必須 日付を表す文字列。
  • 形式: 必須 ソースの日付の形式を表す文字列。注意: これが実行する ではない は、日付文字列の変換先の形式を表します。
  • 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
date
日付文字列を ZonedDateTime オブジェクト(ISO 8601 形式)に変換します。
  • 日付: 必須 日付を表す文字列。
  • 形式: 必須 ソースの日付の形式を表す文字列。注意: これが実行する ではない は、日付文字列の変換先の形式を表します。
date (DATE, FORMAT)
日付("2019-10-23 11:24", "yyyy-MM-dd HH:mm")
2019-10-23T11:24:00Z
date
日付文字列を ZonedDateTime オブジェクト(ISO 8601 形式)に変換します。
  • 日付: 必須 日付を表す文字列。
date (DATE)
date ("2019-10-23 11:24")
"2019-10-23T11:24:00Z ”
date_part
日付の一部を取得します。次のコンポーネント値がサポートされています。

「年」
"yyyy"
"yy"

"quarter"
"qq"
「q」

「月」
「mm」
「m」

"dayofyear"
"dy"
"y"

「日」
"dd"
"d"

「週間」
"ww"
"w"

"平日"
"dw"
"w"

「時間」
「hh」
「hh24」
「hh12」

「分」
"mi"
"n"

「秒」
"ss"
"s"

「ミリ秒」
"SSS"
  • コンポーネント: 必須 日付の一部を表す文字列。
  • 日付: 必須 標準形式の日付。
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 を使用して引き起こすこともできます。
  • 年: 必須 年を 4 桁で表します。
  • 月: 必須 月。 使用できる値は 1~12 です。
  • DAY: 必須 その日。 使用できる値は 1~31 です。
  • 時間: 必須 時間。 使用できる値は 0~23 です。
  • 分: 必須 分。 使用できる値は 0~59 です。
  • ナノ秒: 必須 ナノ秒の値。 使用できる値は 0~999999999 です。
  • TIMEZONE: 必須 日時のタイムゾーン。
make_date_time​(YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, NANOSECOND, TIMEZONE)
make_date_time​(2019, 10, 17, 11, 55, 12, 999, "アメリカ / ロサンゼルス")
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

階層 – オブジェクト objects

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
is_empty
オブジェクトが空かどうかを確認します。
  • 必要情報: 必須 確認しようとしているオブジェクトは空です。
is_empty (INPUT)
is_empty([1, null, 2, 3])
arrays_to_object
オブジェクトのリストを作成します。
  • 必要情報: 必須 キーと配列のペアのグループ。
arrays_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. これは、フィールドをターゲットスキーマにコピーしない場合に使用する必要があります。
nullify ()
nullify ()
null
get_keys
キーと値のペアを解析し、すべてのキーを返します。
  • オブジェクト: 必須 キーの抽出元となるオブジェクト。
get_keys (OBJECT)
get_keys ({"book1": "Pride and Predial", "book2": "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", "-", ",")
John
map_get_values
マップとキー入力を受け取ります。 入力が 1 つのキーである場合、この関数はそのキーに関連付けられた値を返します。 入力が文字列配列の場合、この関数は指定されたキーに対応するすべての値を返します。 入力マップに重複したキーがある場合、戻り値はキーを重複排除し、一意の値を返す必要があります。
  • マップ: 必須 入力マップデータ。
  • キー: 必須 キーは、単一の文字列または文字列配列にすることができます。 他のプリミティブ型(data / number)が指定された場合は、文字列として扱われます。
get_values (MAP, KEY)
詳しくは、 付録 コードサンプルの場合。
map_has_keys
1 つ以上の入力キーが指定されている場合、この関数は true を返します。 文字列配列が入力として指定されている場合、この関数は、見つかった最初のキーに対して true を返します。
  • マップ: 必須 入力マップデータ
  • キー: 必須 キーは、単一の文字列または文字列配列にすることができます。 他のプリミティブ型(data / number)が指定された場合は、文字列として扱われます。
map_has_keys (MAP, KEY)
詳しくは、 付録 コードサンプルの場合。
add_to_map
少なくとも 2 つの入力を受け付けます。 任意の数のマップを入力として指定できます。 データ準備は、すべての入力からのすべてのキーと値のペアを持つ単一のマップを返します。 1 つ以上のキーが(同じマップ内またはマップ間で)繰り返される場合、Data Prep ではキーの重複が排除されるので、最初のキーと値のペアは入力に渡された順序で保持されます。
マップ: 必須 入力マップデータ。
add_to_map (MAP 1, MAP 2, MAP 3, …)
詳しくは、 付録 コードサンプルの場合。
object_to_map (構文 1)
この関数を使用して、マップ データタイプを作成します。
  • キー: 必須 キーは文字列である必要があります。 整数や日付などの他のプリミティブ値が指定されている場合、それらは文字列に自動変換され、文字列として扱われます。
  • ANY_TYPE: 必須 マップを除く、サポートされる XDM データタイプを参照します。
object_to_map (KEY, ANY_TYPE, KEY, ANY_TYPE, …)
詳しくは、 付録 コードサンプルの場合。
object_to_map (構文 2)
この関数を使用して、マップ データタイプを作成します。
  • オブジェクト: 必須 受信オブジェクトまたはオブジェクト配列を指定し、キーとしてオブジェクト内の属性を指すことができます。
object_to_map (OBJECT)
詳しくは、 付録 コードサンプルの場合。
object_to_map (構文 3)
この関数を使用して、マップ データタイプを作成します。
  • オブジェクト: 必須 受信オブジェクトまたはオブジェクト配列を指定し、キーとしてオブジェクト内の属性を指すことができます。
object_to_map (OBJECT_ARRAY, ATTRIBUTE_IN_OBJECT_TO_BE_USED_AS_A_KEY)
詳しくは、 付録 コードサンプルの場合。

オブジェクトのコピーフィーチャーについては、の節を参照してください .

階層 – 配列 arrays

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
coalesce
指定された配列の最初の null 以外のオブジェクトを返します。
  • 必要情報: 必須 最初の null 以外のオブジェクトを検索する配列。
coalesce (入力)
coalesce(null, null, null, "first", null, "second")
"first"
first
指定された配列の最初の要素を取得します。
  • 必要情報: 必須 最初の要素を検索する配列。
first (INPUT)
first("1", "2", "3")
"1"
last
指定された配列の最後の要素を取得します。
  • 必要情報: 必須 最後の要素を検索する配列。
last (入力)
last("1", "2", "3")
"3"
add_to_array
配列の末尾に要素を追加します。
  • 配列: 必須 要素を追加する配列。
  • VALUES:配列に追加する要素。
add_to_array​(ARRAY, VALUES)
add_to_array​([「a」、「b」], 'c', 'd')
[「a」、「b」、「c」、「d」]
join_arrays
配列を相互に組み合わせます。
  • 配列: 必須 要素を追加する配列。
  • VALUES:親配列に追加する配列。
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
この関数は、入力配列全体のすべての要素を Profile の配列の末尾に追加するために使用されます。 この関数は のみ 更新中に適用できます。 挿入のコンテキストで使用される場合、この関数は入力をそのまま返します。
  • 配列: 必須 プロファイルに配列を追加する配列。
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]

階層 – マップ map

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
array_to_map
この関数は、オブジェクト配列とキーを入力として受け取り、値をキー、配列要素を値としてキーのフィールドのマップを返します。
  • 必要情報: 必須 最初の null 以外のオブジェクトを検索するオブジェクト配列。
  • キー: 必須 キーは、オブジェクト配列内のフィールド名で、オブジェクトを値とする必要があります。
array_to_map (OBJECT[] 入力、キー)
を読み取る 付録 コードサンプルの場合。
object_to_map
この関数は、オブジェクトを引数として受け取り、キーと値のペアのマップを返します。
  • 必要情報: 必須 最初の null 以外のオブジェクトを検索するオブジェクト配列。
object_to_map (OBJECT_INPUT)
"object_to_map (address)を指定します。入力内容は" + "address: {line1 : "345 park ave",line2 : "bldg 2",City : "san jose",State : "CA",type: "office"}"です
指定されたフィールド名と値のペアを持つマップ、または入力が null の場合は null を返します。 例:"{line1 : \"345 park ave\",line2: \"bldg 2\",City : \"san jose\",State : \"CA\",type: \"office\"}"
to_map
この関数は、キーと値のペアのリストを受け取り、キーと値のペアのマップを返します。
to_map (OBJECT_INPUT)
"to_map ("firstName", "John", "lastName", "Doe")"
指定されたフィールド名と値のペアを持つマップ、または入力が null の場合は null を返します。 例:"{\"firstName\" : \"John\", \"lastName\": \"Doe\"}"

論理演算子 logical-operators

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
decode
キーと、キーと値のペアのリストが配列としてフラット化されている場合、この関数は、キーが見つかった場合は値を返し、デフォルト値が配列に存在する場合はデフォルト値を返します。
  • キー: 必須 照合するキー。
  • OPTIONS: 必須 キーと値のペアをフラット化した配列。 オプションで、最後にデフォルト値を付けることができます。
decode (KEY, OPTIONS)
decode (stateCode, "ca", "California", "pa", "Pennsylvania", "該当なし")
指定された stateCode が「ca」の場合は、「California」です。
指定された stateCode が「pa」の場合は、「Pennsylvania」です。
stateCode が次と一致しない場合、「N/A」。
iif
指定されたブール式を評価し、結果に基づいて指定された値を返します。
  • 式: 必須 評価されるブール式。
  • TRUE_VALUE: 必須 式が true と評価される場合に返される値。
  • FALSE_VALUE: 必須 式が false と評価される場合に返される値。
iif (EXPRESSION, TRUE_VALUE, FALSE_VALUE)
iif("s".equalsIgnoreCase("S"), "True", "False")
"True"

集計 aggregation

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
min
指定された引数の最小値を返します。自然な順序を使用します。
  • OPTIONS: 必須 互いに比較できる 1 つ以上のオブジェクト。
min (OPTIONS)
min(3, 1, 4)
1
max
指定された引数の最大値を返します。自然な順序を使用します。
  • OPTIONS: 必須 互いに比較できる 1 つ以上のオブジェクト。
max (OPTIONS)
max(3, 1, 4)
4

タイプ変換 type-conversions

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
to_bigint
文字列を BigInteger に変換します。
  • 文字列: 必須 BigInteger に変換する文字列を指定します。
to_bigint (STRING)
to_bigint​("1000000.34")
1000000.34
to_decimal
文字列を倍精度浮動小数点数に変換します。
  • 文字列: 必須 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

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
json_to_object
指定された文字列から JSON コンテンツを逆シリアル化します。
  • 文字列: 必須 シリアル化を解除する JSON 文字列。
json_to_object​(STRING)
json_to_object​({"info":{"firstName":"John","lastName": "Doe"}})
JSON を表すオブジェクト。

特別業務 special-operations

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
uuid /
guid
擬似ランダム ID を生成します。
uuid()
guid()
uuid()
guid()
7c0267d2-bb74-4e1a-9275-3bf4fccda5f4
c7016dc7-3163-43f7-afc7-2e1c9c206333
fpid_to_ecid
この関数は、FPID 文字列を受け取り、Adobe Experience PlatformおよびAdobe Experience Cloud アプリケーションで使用される ECID に変換します。
  • 文字列: 必須 ECID に変換される FPID 文字列。
fpid_to_ecid(STRING)
fpid_to_ecid("4ed70bee-b654-420a-a3fd-b58b6b65e991")
"28880788470263023831040523038280731744"

ユーザーエージェント関数 user-agent

次の表に示すユーザーエージェント関数は、次のいずれかの値を返します。

  • 電話 – 画面が小さいモバイルデバイス(通常は 7"未満)
  • モバイル – まだ識別されていないモバイルデバイス。 このモバイルデバイスは、eReader、タブレット、電話、時計などであり得る。

デバイスフィールドの値について詳しくは、を参照してください。 デバイスフィールド値のリスト このドキュメントの付録に記載されています。

NOTE
左右にスクロールして、テーブルの内容をすべて表示してください。
関数
説明
パラメーター
構文
サンプル出力
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 (KHTML、Gecko のような) Version/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 (KHTML、Gecko のような) Version/5.1 Mobile/9B206 Safari/7534.48.3")
IOS5
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) Version/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) Version/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) Version/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) Version/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 (KHTML、Gecko のような) Version/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 (KHTML、Gecko のような) Version/5.1 Mobile/9B206 Safari/7534.48.3")
Phone

Analytics 関数 analytics

NOTE
WebSDK およびAdobe Analytics フローでは、次の分析関数のみを使用できます。
関数
説明
パラメーター
構文
サンプル出力
aa_get_event_id
Analytics イベント文字列からイベント ID を抽出します。
  • EVENT_STRING: 必須 コンマ区切りの Analytics イベント文字列。
  • イベント名: 必須 抽出するイベント名と ID。
aa_get_event_id (EVENT_STRING, EVENT_NAME)
aa_get_event_id ("event101=5:123456,scOpen", "event101")
123456
aa_get_event_value
Analytics イベント文字列からイベント値を抽出します。 イベントの値が指定されていない場合は、1 が返されます。
  • EVENT_STRING: 必須 コンマ区切りの Analytics イベント文字列。
  • イベント名: 必須 値を抽出するイベント名。
aa_get_event_value (EVENT_STRING, EVENT_NAME)
aa_get_event_value ("event101=5:123456,scOpen", "event101")
5
aa_get_product_categories
Analytics 製品文字列から製品カテゴリを抽出します。
  • PRODUCTS_STRING: 必須 Analytics 製品文字列。
aa_get_product_categories (PRODUCTS_STRING)
aa_get_product_categories (";Example product 1;1;3.50,Example category 2;Example product 2;1;5.99")
[null,"カテゴリ 2 の例"]
aa_get_product_names
Analytics 製品文字列から製品名を抽出します。
  • PRODUCTS_STRING: 必須 Analytics 製品文字列。
aa_get_product_names (PRODUCTS_STRING)
aa_get_product_names (";Example product 1;1;3.50,Example category 2;Example product 2;1;5.99")
[「Example product 1」、「Example product 2」]
aa_get_product_quantities
Analytics 製品文字列から数量を抽出します。
  • PRODUCTS_STRING: 必須 Analytics 製品文字列。
aa_get_product_quantities (PRODUCTS_STRING)
aa_get_product_quantities (";Example product 1;1;3.50,Example category 2;Example product 2")
["1"(ヌル)]
aa_get_product_prices
Analytics 製品文字列から価格を抽出します。
  • PRODUCTS_STRING: 必須 Analytics 製品文字列。
aa_get_product_prices (PRODUCTS_STRING)
aa_get_product_prices (";Example product 1;1;3.50,Example category 2;Example product 2")
[「3.50」(null)]
aa_get_product_event_values
名前付きイベントの値を文字列の配列として products 文字列から抽出します。
  • PRODUCTS_STRING: 必須 Analytics 製品文字列。
  • イベント名: 必須 値を抽出するイベント名。
aa_get_product_event_values (PRODUCTS_STRING, EVENT_NAME)
aa_get_product_event_values (";Example product 1;1;4.20;event1=2.3|event2=5:1,;Example product 2;1;4.20;event1=3|event2=2:2", "event1")
[「2.3」、「3」]
aa_get_product_evars
製品文字列から、指定されたイベントの evar 値を文字列の配列として抽出します。
  • PRODUCTS_STRING: 必須 Analytics 製品文字列。
  • EVAR名: 必須 抽出するeVar名。
aa_get_product_evars (PRODUCTS_STRING, EVENT_NAME)
aa_get_product_evars (";Example product;1;6.69;;eVar1=マーチャンダイジング値", "eVar1")
[「マーチャンダイジング値」]

オブジェクトのコピー object-copy

TIP
ソース内のオブジェクトが 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

上記の例では、 city および state 属性も、次の理由により実行時に自動的に取り込まれます。 address オブジェクトのマッピング先 addr. を作成する場合 line2 xdm 構造の属性と入力データにも、が含まれています line2 が含まれる address 次に、マッピングを手動で変更することなく、オブジェクトも自動的に取り込まれます。

自動マッピングが機能するには、次の前提条件を満たす必要があります。

  • 親レベルオブジェクトはマッピングする必要があります。
  • XDM スキーマに新しい属性が作成されている必要があります。
  • 新しい属性は、ソーススキーマと XDM スキーマで名前が一致している必要があります。

前提条件のいずれかが満たされない場合は、データ準備を使用して、ソーススキーマを XDM スキーマに手動でマッピングする必要があります。

付録

次に、データ準備のマッピング機能の使用に関する追加情報を示します

特殊文字 special-characters

予約文字とそれらに対応するエンコードされた文字のリストを次の表に示します。

予約文字
エンコードされた文字
space
%20
!
%21
%22
#
%23
$
%24
%
%25
&
%26
'
%27
%28
%29
*
%2A
+
%2B
,
%2C
/
%2F
%3A
%3B
<
%3C
=
%3D
>
%3E
%3F
@
%40
[
%5B
]
%5D
^
%5E
'
%60
~
%7E

デバイスフィールドの値 device-field-values

次の表に、デバイスフィールド値のリストと対応する説明を示します。

デバイス
説明
Desktop
デスクトップまたはラップトップ型のデバイス。
匿名化
匿名デバイス。 場合によっては、次のようになります。 useragents それは匿名化ソフトウェアによって変更されました。
不明
不明なデバイスです。 これらは通常、 useragents デバイスに関する情報が含まれていません。
Mobile
まだ識別されていないモバイルデバイス。 このモバイルデバイスは、eReader、タブレット、電話、時計などであり得る。
タブレット
大きな画面(通常は 7 インチを超える)を備えたモバイルデバイス。
Phone
画面が小さいモバイルデバイス(通常は 7"未満)。
ウォッチ
画面が小さいモバイルデバイス(通常は 2 インチ未満)。 これらのデバイスは、通常、スマートフォンやタブレットタイプのデバイスの追加画面として動作します。
拡張現実
AR 機能を備えたモバイルデバイス。
バーチャルリアリティ
VR 機能を備えたモバイルデバイス。
eReader
錠剤に似た装置、しかし通常は eInk 画面。
セットトップボックス
テレビのサイズの画面を介した操作を可能にする接続されたデバイス。
TV
セットトップボックスに似たデバイスですが、テレビに組み込まれています。
家電製品
冷蔵庫のような(通常は大きな)家電製品。
ゲーム機
A のような固定ゲームシステム Playstation または XBox.
携帯型ゲーム機
のようなモバイルゲームシステム Nintendo Switch.
音声
のような音声駆動のデバイス Amazon Alexa または Google Home.
Car
車両ベースのブラウザー。
ロボット
Web サイトを訪問するロボット。
ロボットモバイル
Web サイトを訪問し、モバイル訪問者として見られることを示すロボット。
ロボットイミテータ
ウェブサイトを訪問し、ロボットのようなふりをするロボット Googleしかし、実際はそうではありません。 注意:ほとんどの場合、ロボットイミテーターは実際にはロボットです。
Cloud
クラウドベースのアプリケーション。 これらはロボットでもハッカーでもなく、接続する必要のあるアプリケーションです。 これには以下が含まれます Mastodon サーバー。
ハッカー
このデバイスの値は、でスクリプティングが検出された場合に使用されます useragent 文字列。

コードサンプル code-samples

map_get_values map-get-values

選択すると例が表示されます
code language-json
 example = "map_get_values(book_details,\"author\") where input is : {\n" +
        "    \"book_details\":\n" +
        "    {\n" +
        "        \"author\": \"George R. R. Martin\",\n" +
        "        \"price\": 17.99,\n" +
        "        \"ISBN\": \"ISBN-978-0553801477\"\n" +
        "    }\n" +
        "}",
      result = "{\"author\": \"George R. R. Martin\"}"

map_has_keys map_has_keys

選択すると例が表示されます
code language-json
 example = "map_has_keys(book_details,\"author\")where input is : {\n" +
        "    \"book_details\":\n" +
        "    {\n" +
        "        \"author\": \"George R. R. Martin\",\n" +
        "        \"price\": 17.99,\n" +
        "        \"ISBN\": \"ISBN-978-0553801477\"\n" +
        "    }\n" +
        "}",
      result = "true"

add_to_map add_to_map

選択すると例が表示されます
code language-json
example = "add_to_map(book_details, book_details2) where input is {\n" +
        "    \"book_details\":\n" +
        "    {\n" +
        "        \"author\": \"George R. R. Martin\",\n" +
        "        \"price\": 17.99,\n" +
        "        \"ISBN\": \"ISBN-978-0553801477\"\n" +
        "    }\n" +
        "}" +
        "{\n" +
        "    \"book_details2\":\n" +
        "    {\n" +
        "        \"author\": \"Neil Gaiman\",\n" +
        "        \"price\": 17.99,\n" +
        "        \"ISBN\": \"ISBN-0-380-97365-0\"\n" +
        "        \"publisher\": \"William Morrow\"\n" +
        "    }\n" +
        "}",
      result = "{\n" +
        "    \"book_details\":\n" +
        "    {\n" +
        "        \"author\": \"George R. R. Martin\",\n" +
        "        \"price\": 17.99,\n" +
        "        \"ISBN\": \"ISBN-978-0553801477\"\n" +
        "        \"publisher\": \"William Morrow\"\n" +
        "    }\n" +
        "}",
      returns = "A new map with all elements from map and addends"

object_to_map object_to_map

構文 1

選択すると例が表示されます
code language-json
example = "object_to_map(\"firstName\", \"John\", \"lastName\", \"Doe\")",
result = "{\"firstName\" : \"John\", \"lastName\": \"Doe\"}"

構文 2

選択すると例が表示されます
code language-json
example = "object_to_map(address) where input is " +
  "address: {line1 : \"345 park ave\",line2: \"bldg 2\",City : \"san jose\",State : \"CA\",type: \"office\"}",
result = "{line1 : \"345 park ave\",line2: \"bldg 2\",City : \"san jose\",State : \"CA\",type: \"office\"}"

構文 3

選択すると例が表示されます
code language-json
example = "object_to_map(addresses,type)" +
        "\n" +
        "[\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City\": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"home\"\n" +
        "    },\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City \": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"work\"\n" +
        "    },\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City \": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"office\"\n" +
        "    }\n" +
        "]" ,
result = "{\n" +
        "    \"home\":\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City\": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"home\"\n" +
        "    },\n" +
        "    \"work\":\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City \": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"work\"\n" +
        "    },\n" +
        "    \"office\":\n" +
        "    {\n" +
        "        \"line1\": \"345 park ave\",\n" +
        "        \"line2\": \"bldg 2\",\n" +
        "        \"City \": \"san jose\",\n" +
        "        \"State\": \"CA\",\n" +
        "        \"type\": \"office\"\n" +
        "    }\n" +
        "}"

array_to_map array_to_map

選択すると例が表示されます
code language-json
example = "array_to_map(addresses, \"type\") where addresses is\n" +
  "\n" +
  "[\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City\": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"home\"\n" +
  "    },\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City \": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"work\"\n" +
  "    },\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City \": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"office\"\n" +
  "    }\n" +
  "]" ,
result = "{\n" +
  "    \"home\":\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City\": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"home\"\n" +
  "    },\n" +
  "    \"work\":\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City \": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"work\"\n" +
  "    },\n" +
  "    \"office\":\n" +
  "    {\n" +
  "        \"line1\": \"345 park ave\",\n" +
  "        \"line2\": \"bldg 2\",\n" +
  "        \"City \": \"san jose\",\n" +
  "        \"State\": \"CA\",\n" +
  "        \"type\": \"office\"\n" +
  "    }\n" +
  "}",
returns = "Returns a map with given field name and value pairs or null if input is null"
recommendation-more-help
461cc884-c234-4a0c-ac75-6efbaafc1394