1
+ ---
1
2
slug : ' /sql-reference/functions/tuple-map-functions'
2
3
sidebar_position : 120
3
- sidebar_label: 'マップ '
4
+ sidebar_label : ' マップ関数 '
4
5
title : ' マップ関数'
5
- keywords: 'ClickHouse, マップ関数'
6
+ keywords : [ 'ClickHouse', ' マップ関数']
6
7
description : ' ClickHouseのマップ関数に関する文書'
7
- ```
8
+ ---
8
9
9
10
## map {#map}
10
11
@@ -115,10 +116,10 @@ SELECT mapFromArrays(map('a', 1, 'b', 2, 'c', 3), [1, 2, 3])
115
116
116
117
## extractKeyValuePairs {#extractkeyvaluepairs}
117
118
118
- キーと値のペアの文字列を[ Map(String, String)] ( ../data-types/map.md ) に変換します。
119
- 解析はノイズ(例:ログファイル)に対して耐性があります。
120
- 入力文字列のキー-バリューペアは、キーの後にキー-バリュー区切り文字が続き、その後に値が続きます。
121
- キー-バリューペアはペアの区切りで分けられます。
119
+ キーと値のペアの文字列を[ Map(String, String)] ( ../data-types/map.md ) に変換します。
120
+ 解析はノイズ(例:ログファイル)に対して耐性があります。
121
+ 入力文字列のキー-バリューペアは、キーの後にキー-バリュー区切り文字が続き、その後に値が続きます。
122
+ キー-バリューペアはペアの区切りで分けられます。
122
123
キーと値は引用符で囲むことができます。
123
124
124
125
** 構文**
@@ -140,7 +141,7 @@ extractKeyValuePairs(data[, key_value_delimiter[, pair_delimiter[, quoting_chara
140
141
141
142
** 返される値**
142
143
143
- - キー-バリューペアの配列。タイプ: [ Map(String, String)] ( ../data-types/map.md )
144
+ - キー-バリューペアの配列。タイプ: [ Map(String, String)] ( ../data-types/map.md )
144
145
145
146
** 例**
146
147
@@ -210,13 +211,13 @@ map_restored: {'John':'33','Paula':'31'}
210
211
211
212
` extractKeyValuePairs ` と同じですが、エスケープのサポートがあります。
212
213
213
- サポートされているエスケープシーケンス: ` \x ` , ` \N ` , ` \a ` , ` \b ` , ` \e ` , ` \f ` , ` \n ` , ` \r ` , ` \t ` , ` \v ` および ` \0 ` 。
214
+ サポートされているエスケープシーケンス: ` \x ` , ` \N ` , ` \a ` , ` \b ` , ` \e ` , ` \f ` , ` \n ` , ` \r ` , ` \t ` , ` \v ` および ` \0 ` 。
214
215
非標準のエスケープシーケンスは、そのままの形(バックスラッシュを含む)で返されますが、以下のいずれかの場合を除きます: ` \\ ` , ` ' ` , ` " ` , ` バックティック ` , ` / ` , ` = ` または ASCII 制御文字 (c < ; = 31)。
215
216
216
- この関数は、事前のエスケープおよび後のエスケープが適さない使用ケースを満たします。
217
+ この関数は、事前のエスケープおよび後のエスケープが適さない使用ケースを満たします。
217
218
例えば、次の入力文字列を考えます: ` a: "aaaa\"bbb" ` 。期待される出力は: ` a: aaaa\"bbbb ` です。
218
219
- 事前エスケープ: 事前エスケープすると出力は: ` a: "aaaa"bbb ` となり、` extractKeyValuePairs ` の出力は: ` a: aaaa ` 。
219
- - 後エスケープ: ` extractKeyValuePairs ` の出力は ` a: aaaa\ ` となり、後エスケープはそのままです。
220
+ - 後エスケープ: ` extractKeyValuePairs ` の出力は ` a: aaaa\ ` となり、後エスケープはそのままです。
220
221
221
222
キー内の先頭エスケープシーケンスはスキップされ、値に対して無効とみなされます。
222
223
@@ -248,8 +249,8 @@ mapAdd(arg1, arg2 [, ...])
248
249
249
250
** 引数**
250
251
251
- 引数は、[ map] ( ../data-types/map.md ) または、2つの [ arrays] ( /sql-reference/data-types/array ) の[ tuple] ( /sql-reference/data-types/tuple ) です。
252
- 最初の配列の項目はキーを表し、2番目の配列は各キーに対する値を含みます。すべてのキー配列は同じタイプである必要があり、すべての値配列は、同じ型([ Int64] ( /sql-reference/data-types/int-uint#integer-ranges ) , [ UInt64] ( /sql-reference/data-types/int-uint#integer-ranges ) または [ Float64] ( /sql-reference/data-types/float ) )に昇格される項目を含む必要があります。
252
+ 引数は、[ map] ( ../data-types/map.md ) または、2つの [ arrays] ( /sql-reference/data-types/array ) の[ tuple] ( /sql-reference/data-types/tuple ) です。
253
+ 最初の配列の項目はキーを表し、2番目の配列は各キーに対する値を含みます。すべてのキー配列は同じタイプである必要があり、すべての値配列は、同じ型([ Int64] ( /sql-reference/data-types/int-uint#integer-ranges ) , [ UInt64] ( /sql-reference/data-types/int-uint#integer-ranges ) または [ Float64] ( /sql-reference/data-types/float ) )に昇格される項目を含む必要があります。
253
254
共通の昇格されたタイプが結果配列の型として使用されます。
254
255
255
256
** 返される値**
@@ -298,8 +299,8 @@ mapSubtract(Tuple(Array, Array), Tuple(Array, Array) [, ...])
298
299
299
300
** 引数**
300
301
301
- 引数は、[ map] ( ../data-types/map.md ) または、2つの [ arrays] ( /sql-reference/data-types/array ) の[ tuple] ( /sql-reference/data-types/tuple ) です。
302
- 最初の配列の項目はキーを表し、2番目の配列は各キーに対する値を含みます。すべてのキー配列は同じタイプである必要があり、すべての値配列は、同じ型([ Int64] ( /sql-reference/data-types/int-uint#integer-ranges ) , [ UInt64] ( /sql-reference/data-types/int-uint#integer-ranges ) または [ Float64] ( /sql-reference/data-types/float ) )に昇格される項目を含む必要があります。
302
+ 引数は、[ map] ( ../data-types/map.md ) または、2つの [ arrays] ( /sql-reference/data-types/array ) の[ tuple] ( /sql-reference/data-types/tuple ) です。
303
+ 最初の配列の項目はキーを表し、2番目の配列は各キーに対する値を含みます。すべてのキー配列は同じタイプである必要があり、すべての値配列は、同じ型([ Int64] ( /sql-reference/data-types/int-uint#integer-ranges ) , [ UInt64] ( /sql-reference/data-types/int-uint#integer-ranges ) または [ Float64] ( /sql-reference/data-types/float ) )に昇格される項目を含む必要があります。
303
304
共通の昇格されたタイプが結果配列の型として使用されます。
304
305
305
306
** 返される値**
@@ -338,10 +339,10 @@ SELECT mapSubtract(([toUInt8(1), 2], [toInt32(1), 1]), ([toUInt8(1), 2], [toInt3
338
339
339
340
## mapPopulateSeries {#mappopulateseries}
340
341
341
- 整数キーのマップで欠落しているキー-バリューペアを埋めます。
342
- キーを最大値を超えて拡張できるようにするために、最大キーを指定できます。
343
- より具体的には、この関数は、最小キーから最大キーまで(または指定された場合は` max ` 引数)のキーをステップサイズ1で形成するマップを返し、対応する値も返します。
344
- キーの値が指定されていない場合は、デフォルト値が使用されます。
342
+ 整数キーのマップで欠落しているキー-バリューペアを埋めます。
343
+ キーを最大値を超えて拡張できるようにするために、最大キーを指定できます。
344
+ より具体的には、この関数は、最小キーから最大キーまで(または指定された場合は` max ` 引数)のキーをステップサイズ1で形成するマップを返し、対応する値も返します。
345
+ キーの値が指定されていない場合は、デフォルト値が使用されます。
345
346
キーが繰り返される場合は、最初の値のみ(出現順)にそのキーが関連付けられます。
346
347
347
348
** 構文**
@@ -446,8 +447,8 @@ SELECT mapContains(a, 'name') FROM tab;
446
447
447
448
指定されたマップのキーを返します。
448
449
449
- この関数は、設定 [ optimize_functions_to_subcolumns] ( /operations/settings/settings#optimize_functions_to_subcolumns ) を有効にすることで最適化できます。
450
- 設定が有効な場合、この関数はマップ全体ではなく、[ keys] ( /sql-reference/data-types/map#reading-subcolumns-of-map ) サブカラムのみを読み取ります。
450
+ この関数は、設定 [ optimize_functions_to_subcolumns] ( /operations/settings/settings#optimize_functions_to_subcolumns ) を有効にすることで最適化できます。
451
+ 設定が有効な場合、この関数はマップ全体ではなく、[ keys] ( /sql-reference/data-types/map#reading-subcolumns-of-map ) サブカラムのみを読み取ります。
451
452
クエリ ` SELECT mapKeys(m) FROM table ` は ` SELECT m.keys FROM table ` に変換されます。
452
453
453
454
** 構文**
@@ -489,8 +490,8 @@ SELECT mapKeys(a) FROM tab;
489
490
490
491
指定されたマップの値を返します。
491
492
492
- この関数は、設定 [ optimize_functions_to_subcolumns] ( /operations/settings/settings#optimize_functions_to_subcolumns ) を有効にすることで最適化できます。
493
- 設定が有効な場合、この関数はマップ全体ではなく、[ values] ( /sql-reference/data-types/map#reading-subcolumns-of-map ) サブカラムのみを読み取ります。
493
+ この関数は、設定 [ optimize_functions_to_subcolumns] ( /operations/settings/settings#optimize_functions_to_subcolumns ) を有効にすることで最適化できます。
494
+ 設定が有効な場合、この関数はマップ全体ではなく、[ values] ( /sql-reference/data-types/map#reading-subcolumns-of-map ) サブカラムのみを読み取ります。
494
495
クエリ ` SELECT mapValues(m) FROM table ` は ` SELECT m.values FROM table ` に変換されます。
495
496
496
497
** 構文**
@@ -724,7 +725,7 @@ SELECT mapUpdate(map('key1', 0, 'key3', 0), map('key1', 10, 'key2', 10)) AS map;
724
725
725
726
## mapConcat {#mapconcat}
726
727
727
- キーの等価性に基づいて複数のマップを結合します。
728
+ キーの等価性に基づいて複数のマップを結合します。
728
729
同じキーを持つ要素が複数の入力マップに存在する場合、すべての要素が結果マップに追加されますが、オペレーター ` [] ` を介してアクセスできるのは最初のものだけです。
729
730
730
731
** 構文**
@@ -776,7 +777,7 @@ SELECT mapConcat(map('key1', 1, 'key2', 2), map('key1', 3)) AS map, map['key1'];
776
777
` map ` に少なくとも 1 つのキー-バリュー ペアが存在し、` func(key, value) ` が 0 以外の何かを返す場合は 1 を返します。そうでなければ 0 を返します。
777
778
778
779
::: note
779
- ` mapExists ` は[ 高階関数] ( /sql-reference/functions/overview#higher-order-functions ) です。
780
+ ` mapExists ` は[ 高階関数] ( /sql-reference/functions/overview#higher-order-functions ) です。
780
781
最初の引数にラムダ関数を渡すことができます。
781
782
:::
782
783
@@ -801,7 +802,7 @@ SELECT mapExists((k, v) -> (v = 1), map('k1', 1, 'k2', 2)) AS res
801
802
すべてのキー-バリューペアに対して、` func(key, value) ` が 0 以外の何かを返す場合は 1 を返します。そうでなければ 0 を返します。
802
803
803
804
::: note
804
- ` mapAll ` は[ 高階関数] ( /sql-reference/functions/overview#higher-order-functions ) です。
805
+ ` mapAll ` は[ 高階関数] ( /sql-reference/functions/overview#higher-order-functions ) です。
805
806
最初の引数にラムダ関数を渡すことができます。
806
807
:::
807
808
@@ -823,7 +824,7 @@ SELECT mapAll((k, v) -> (v = 1), map('k1', 1, 'k2', 2)) AS res
823
824
824
825
## mapSort(\[ func,\] , map) {#mapsortfunc-map}
825
826
826
- マップの要素を昇順にソートします。
827
+ マップの要素を昇順にソートします。
827
828
` func ` 関数が指定されている場合、ソート順は、マップのキーと値に ` func ` 関数を適用した結果によって決まります。
828
829
829
830
** 例**
@@ -852,7 +853,7 @@ SELECT mapSort((k, v) -> v, map('key2', 2, 'key3', 1, 'key1', 3)) AS map;
852
853
853
854
## mapPartialSort {#mappartialsort}
854
855
855
- 追加の ` limit ` 引数を使って、マップの要素を昇順にソートし、部分的なソートを可能にします。
856
+ 追加の ` limit ` 引数を使って、マップの要素を昇順にソートし、部分的なソートを可能にします。
856
857
` func ` 関数が指定されている場合、ソート順は、マップのキーと値に ` func ` 関数を適用した結果によって決まります。
857
858
858
859
** 構文**
@@ -885,7 +886,7 @@ SELECT mapPartialSort((k, v) -> v, 2, map('k1', 3, 'k2', 1, 'k3', 2));
885
886
886
887
## mapReverseSort(\[ func,\] , map) {#mapreversesortfunc-map}
887
888
888
- マップの要素を降順にソートします。
889
+ マップの要素を降順にソートします。
889
890
` func ` 関数が指定されている場合、ソート順は、マップのキーと値に ` func ` 関数を適用した結果によって決まります。
890
891
891
892
** 例**
@@ -914,7 +915,7 @@ SELECT mapReverseSort((k, v) -> v, map('key2', 2, 'key3', 1, 'key1', 3)) AS map;
914
915
915
916
## mapPartialReverseSort {#mappartialreversesort}
916
917
917
- 追加の ` limit ` 引数を持ち、降順でマップの要素をソートし、部分的なソートを可能にします。
918
+ 追加の ` limit ` 引数を持ち、降順でマップの要素をソートし、部分的なソートを可能にします。
918
919
` func ` 関数が指定されている場合、ソート順は、マップのキーと値に ` func ` 関数を適用した結果によって決まります。
919
920
920
921
** 構文**
0 commit comments