DDLクエリ で作成された辞書では、
dict_name parameter は <database>.<dict_name> のように完全修飾で指定する必要があります。そうしないと、現在の database が使用されます。辞書の例
このセクションの例では、以下の Dictionary を使用します。以下で説明する関数の例を実行するには、 これらを ClickHouse に作成してください。dictGet<T> 関数および dictGet<T>OrDefault 関数用の Dictionary の例
dictGet<T> 関数および dictGet<T>OrDefault 関数用の Dictionary の例
dictGetAll 用の Dictionary の例
dictGetAll 用の Dictionary の例
regexp tree Dictionary 用のデータを格納するテーブルを作成します。テーブルにデータを挿入します。regexp tree Dictionary を作成します。
範囲キー辞書の例
範囲キー辞書の例
入力テーブルを作成します:入力テーブルにデータを挿入します:辞書を作成します:
複合キー辞書の例
複合キー辞書の例
ソーステーブルを作成します:ソーステーブルにデータを挿入します:辞書を作成します:
階層型辞書の例
階層型辞書の例
ソーステーブルを作成します:ソーステーブルにデータを挿入します:辞書を作成します:
辞書関数にキーを渡す
dictGet、dictGetOrDefault、dictGetOrNull、dictHas などの関数のキー引数 (id_expr) は、辞書のキーの種類によって異なります:
- 単純キー (
UInt64) を持つ辞書の場合は、キー値を直接渡します:
- 属性が 2 つ以上ある複合 (complex) キーの辞書では、キーの値をタプルで渡します:
- 複合キーが単一の属性のみで構成されている場合、キー値は
tupleでラップせずにそのまま直接渡せます。以下はいずれも有効で、同等です:
ip_trie 辞書にも当てはまります。検索対象の IP アドレスは直接渡すことができます:
dictGet
導入バージョン: v18.16.0 Dictionary から値を取得します。この関数は非決定論的です。同じ引数に対しても異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_names— Dictionary のカラム名、またはカラム名のタプル。StringまたはTuple(String)id_expr— 秘密鍵の値。単純な秘密鍵を持つ Dictionary の場合は、UInt64値を返す式です。複合秘密鍵を持つ Dictionary の場合は、秘密鍵の値のタプルを返す式です。複合秘密鍵が単一の属性のみで構成されている場合は、その値をtupleで囲まずに直接渡すこともできます。UInt64またはTuple(T)
<null_value> 要素の内容を返します。
例
単一の属性を取得する
Query
Response
Query
Response
dictGetAll
導入バージョン: v23.5.0 正規表現ツリー辞書 で、各キーに一致したすべてのノードの属性値を取得します。T ではなく Array(T) 型の値を返す点を除き、この関数の動作は dictGet と同様です。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_names— Dictionary のカラム名、またはカラム名のタプル。StringまたはTuple(String)id_expr— キー値。辞書キー型の値またはタプル値を返す式 (Dictionary の設定に依存) 。ExpressionまたはTuple(T)limit— 任意。返される各値配列の最大長。切り詰める場合は、親ノードよりも子ノードが優先され、それ以外では regexp tree Dictionary で定義されたリスト順が尊重されます。指定しない場合、配列長は無制限です。UInt*
attr_names で指定された各属性について、id_expr に対応する Dictionary 属性の値の配列を返します。
Dictionary に id_expr に対応するキーがない場合は、空の配列を返します。
ClickHouse は、属性の値をパースできない場合、または値が属性のデータ型と一致しない場合に例外をスローします。
Array(T)
例
使用例
Query
Response
dictGetChildren
導入バージョン: v21.4.0 第1階層の子を索引の配列として返します。これは dictGetHierarchy の逆変換にあたります。この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書名。Stringkey— 確認対象のキー。const String
Array(UInt64)
例
辞書の第1レベルの子要素を取得する
Query
Response
dictGetDate
導入バージョン: v1.1.0 Dictionaryの属性値を、Dictionaryの設定にかかわらずDateデータ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値またはタプル値を返す式 (辞書設定に依存) 。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合、ClickHouse は例外をスローします。
Query
Response
dictGetDateOrDefault
導入バージョン: v1.1.0 Dictionary の設定にかかわらず、辞書 attribute の値をDate データ型に変換し、秘密鍵 が見つからない場合は指定したデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_name— Dictionary のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値またはタプル値を返す式 (Dictionary の設定に依存) 。ExpressionまたはTuple(T)default_value_expr— Dictionary にid_exprキーを持つ行が含まれていない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する Dictionary 属性の値を返します。
それ以外の場合は、default_value_expr パラメータとして渡された値を返します。
ClickHouse は、属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetDateTime
導入バージョン: v1.1.0 辞書設定に関係なく、辞書属性の値をDateTimeデータ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値またはタプル値を返す式 (辞書設定に依存) 。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
それ以外の場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
属性の値をパースできない場合、または値が属性のデータ型と一致しない場合、ClickHouse は例外をスローします。
Query
Response
dictGetDateTimeOrDefault
導入バージョン: v1.1.0 Dictionary の設定にかかわらず、Dictionary の属性値をDateTime データ型に変換します。キーが見つからない場合は、指定したデフォルト値を返します。
この関数は非決定論的です。同じ引数でも異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キーの値。辞書キー型の値、またはタプル値 (辞書設定に依存) を返す式。ExpressionまたはTuple(T)default_value_expr— 辞書にid_exprキーを持つ行がない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、default_value_expr パラメータとして渡された値を返します。
属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合、ClickHouse は例外をスローします。
Query
Response
dictGetDescendants
導入バージョン: v21.4.0dictGetChildren 関数を level 回再帰的に適用した場合と同様に、すべての子孫ノードを返します。
この関数は非決定論的です。同じ引数に対しても異なる結果を返すことがあります。
dict_name— Dictionary 名。Stringkey— 確認するキー。const Stringlevel— 確認するキーの階層レベル。level = 0の場合は、末端まですべての子孫を返します。UInt8
Array(UInt64)
例
Dictionary の第1レベルの子を取得する
Query
Response
dictGetFloat32
導入バージョン: v1.1.0 Dictionary の属性値を、Dictionary の設定にかかわらずFloat32 データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値を返す式 (辞書の設定に依存) 。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値をパースできない場合、または値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetFloat32OrDefault
導入バージョン: v1.1.0 Dictionary の設定にかかわらず、Dictionary の属性値をFloat32 型に変換します。秘密鍵が見つからない場合は、指定したデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_name— Dictionary のカラム名。StringまたはTuple(String)id_expr— キー値。Dictionary キー型の値、またはタプル値を返す式 (Dictionary の設定に依存) 。ExpressionまたはTuple(T)default_value_expr— Dictionary にid_exprキーを持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する Dictionary 属性の値を返します。
該当しない場合は、default_value_expr パラメータとして渡された値を返します。
ClickHouse は、属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetFloat64
導入バージョン: v1.1.0 Dictionary の属性値を、Dictionary の設定に関係なくFloat64 データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値を返す式 (辞書設定に依存) 。ExpressionまたはTuple(T)
id_expr に対応する辞書の属性値を返します。
該当しない場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性値を解析できない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetFloat64OrDefault
導入バージョン: v1.1.0 辞書の設定にかかわらず、辞書属性の値をFloat64 データ型に変換します。キーが見つからない場合は、指定されたデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返す可能性があります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値を返す式 (辞書の設定に依存) 。ExpressionまたはTuple(T)default_value_expr— 辞書にid_exprキーを持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
対応する値がない場合は、default_value_expr パラメータとして渡された値を返します。
ClickHouse は、属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetHierarchy
導入バージョン: v1.1.0 階層型Dictionary 内で、キーのすべての親を含む配列を作成します。この関数は非決定論的です。同じ引数でも、異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringkey— キー値。const String
Array(UInt64)
例
キーの階層を取得
Query
Response
dictGetIPv4
導入バージョン: v1.1.0 Dictionary の設定に関係なく、Dictionary 属性の値をIPv4 データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値 (辞書設定に依存) を返す式。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、辞書設定でその属性に対して指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合、例外を送出します。
Query
Response
dictGetIPv4OrDefault
導入バージョン: v23.1.0 Dictionary の設定にかかわらず、Dictionary の属性値をIPv4 データ型に変換します。秘密鍵が見つからない場合は、指定したデフォルト値を返します。
この関数は非決定論的です。同じ引数でも異なる結果を返すことがあります。
dict_name— Dictionary名。Stringattr_name— Dictionary のカラム名。StringまたはTuple(String)id_expr— 秘密鍵値。Dictionary 秘密鍵型の値、またはタプル値を返す式 (Dictionary の設定に依存) 。ExpressionまたはTuple(T)default_value_expr— Dictionary にid_expr秘密鍵を持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応するDictionary属性の値を返します。
対応する値がない場合は、default_value_expr パラメータとして渡された値を返します。
ClickHouse は、属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetIPv6
導入バージョン: v23.1.0 Dictionary の設定にかかわらず、辞書属性の値をIPv6 データ型に変換します。
この関数は非決定論的です。同じ引数でも異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キーの値。辞書キー型の値またはタプル値を返す式 (辞書の設定に依存) 。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、辞書の設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetIPv6OrDefault
導入バージョン: v23.1.0 Dictionary 設定にかかわらず、Dictionary 属性の値をIPv6 データ型に変換します。秘密鍵が見つからない場合は、指定されたデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— Dictionary名。Stringattr_name— Dictionary のカラム名。StringまたはTuple(String)id_expr— 秘密鍵値。Dictionary 秘密鍵型の値、またはタプル値 (Dictionary 設定に依存) を返す式。ExpressionまたはTuple(T)default_value_expr— Dictionary にid_expr秘密鍵を持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応するDictionary属性の値を返します。
該当する値がない場合は、default_value_expr パラメータとして渡された値を返します。
ClickHouse は、属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetInt16
導入バージョン: v1.1.0 Dictionary の属性値を、Dictionary の設定にかかわらずInt16 データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値 (辞書の設定に依存) を返す式。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、辞書の設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合に例外を発生させます。
Query
Response
dictGetInt16OrDefault
導入バージョン: v1.1.0 Dictionary の属性値を、Dictionary の設定にかかわらずInt16 データ型に変換します。キーが見つからない場合は、指定されたデフォルト値を返します。
この関数は非決定論的です。同じ引数に対しても異なる結果を返す可能性があります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値を返す式 (辞書の設定に依存) 。ExpressionまたはTuple(T)default_value_expr— 辞書にid_exprキーを持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する Dictionary 属性の値を返します。
対応する値がない場合は、default_value_expr パラメータとして渡された値を返します。
ClickHouse は、属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetInt32
導入バージョン: v1.1.0 辞書設定に関係なく、辞書の属性値をInt32 データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、または Tuple 値を返す式 (辞書の設定に依存) 。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。対応する値がない場合は、辞書の設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値を解析できない場合、または値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetInt32OrDefault
導入バージョン: v1.1.0 Dictionary の設定にかかわらず、辞書属性の値をInt32 データ型に変換します。キーが見つからない場合は、指定されたデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_name— Dictionary のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値またはタプル値を返す式 (Dictionary の設定に依存します) 。ExpressionまたはTuple(T)default_value_expr— Dictionary にid_exprキーを持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する Dictionary 属性の値を返します。
存在しない場合は、default_value_expr パラメータとして渡された値を返します。
属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合、ClickHouse は例外をスローします。
Query
Response
dictGetInt64
導入バージョン: v1.1.0 Dictionary の設定に関係なく、辞書属性の値をInt64 データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値またはタプル値を返す式 (辞書設定に依存) 。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetInt64OrDefault
導入バージョン: v1.1.0 Dictionary の設定にかかわらず、辞書属性の値をInt64 データ型に変換します。キーが見つからない場合は、指定したデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値を返す式 (辞書の設定に依存) 。ExpressionまたはTuple(T)default_value_expr— 辞書にid_exprキーを持つ行が含まれていない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、default_value_expr パラメーターとして渡された値を返します。
ClickHouse は、属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetInt8
導入バージョン: v1.1.0 辞書の設定に関係なく、辞書属性の値をInt8 データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値 (辞書設定に依存) を返す式。ExpressionまたはTuple(T)
id_expr に対応する辞書の属性値を返します。
対応する値がない場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
属性の値をパースできない場合、または値が属性のデータ型と一致しない場合、ClickHouse は例外をスローします。
Query
Response
dictGetInt8OrDefault
導入バージョン: v1.1.0 ディクショナリの設定にかかわらず、ディクショナリ属性の値をInt8 データ型に変換します。キーが見つからない場合は、指定されたデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値を返す式 (辞書設定に依存) 。ExpressionまたはTuple(T)default_value_expr— 辞書にid_exprキーを持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当しない場合は、default_value_expr パラメータとして渡された値を返します。
ClickHouse は、属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetKeys
導入バージョン: v25.12.0 属性が指定した値に等しい辞書キーを返します。これは、単一の属性に対する関数dictGet の逆です。
dictGetKeys で使用されるクエリごとの逆ルックアップキャッシュのサイズを制限するには、設定 max_reverse_dictionary_lookup_cache_size_bytes を使用します。
このキャッシュは、同じクエリ内で辞書を再走査しないよう、各属性値に対応するシリアライズ済みのキーのタプルを格納します。
このキャッシュはクエリをまたいで保持されません。上限に達すると、エントリは LRU に従って追い出されます。
これは、大きな辞書で、入力のカーディナリティが低く、かつワーキングセットがキャッシュに収まる場合に最も効果的です。キャッシュを無効にするには 0 を設定します。
この関数は非決定論的です。同じ引数でも異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_name— 照合する属性。Stringvalue_expr— 属性と照合する値。Expression
value_expr と等しいキーの配列を返します。複合キーの Dictionary の場合、属性が value_expr と等しいキーのタプルの配列を返します。Dictionary 内に value_expr に対応する属性がない場合は、空の配列が返されます。ClickHouse は、属性の値を解析できない場合、またはその値を属性のデータ型に変換できない場合に例外をスローします。
例
使用例
Query
Response
dictGetOrDefault
導入バージョン: v18.16.0 Dictionary から値を取得します。キーが見つからない場合は、デフォルト値を返します。この関数は非決定論的です。同じ引数でも異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_names— Dictionary のカラム名、またはカラム名のタプル。StringまたはTuple(String)id_expr— キー値。単純キーを持つ Dictionary の場合は、UInt64値を返す式です。複合キーを持つ Dictionary の場合は、キー値のタプルを返す式です。複合キーが単一の属性で構成されている場合は、tupleでラップせずにその値を直接渡すこともできます。UInt64またはTuple(T)default_value— キーが見つからない場合に返されるデフォルト値。型は属性のデータ型と一致している必要があります。
id_expr に対応する Dictionary の属性値を返します。
キーが見つからない場合は、指定した default_value を返します。
例
デフォルト値付きで値を取得
Query
Response
dictGetOrNull
導入バージョン: v21.4.0 Dictionary から値を取得し、キーが見つからない場合は NULL を返します。この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書の名前。文字列リテラル。 -attr_name— 取得するカラム名。文字列リテラル。 -id_expr— キー値。辞書のキー型の値を返す式。
id_expr に対応する辞書属性の値を返します。
キーが見つからない場合は、NULL を返します。
例
範囲キー辞書を使用する例
Query
Response
dictGetRoot
導入バージョン: v26.7.0 hierarchical dictionary 内で、秘密鍵の最上位の祖先 (ルート) を返します。 これは、dictGetHierarchy が返す配列の最後の要素を取得するのと等価な便利な関数です。つまり、dictGetHierarchy(dict_name, key)[-1] です。
秘密鍵自体が階層の最上位ノードである場合は、その秘密鍵が返されます。秘密鍵が Dictionary に存在しない場合は、0 が返されます。
この関数は非決定論的です。同じ引数に対しても異なる結果を返すことがあります。
UInt64
例
秘密鍵のルートを取得する
Query
Response
dictGetString
導入バージョン: v1.1.0 辞書の設定に関係なく、辞書属性の値をString データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値 (辞書設定に依存) を返す式。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetStringOrDefault
導入バージョン: v1.1.0 Dictionary の設定にかかわらず、辞書 属性 の値をString データ型に変換するか、秘密鍵が見つからない場合は指定したデフォルト値を返します。
この関数は非決定論的です。同じ引数でも異なる結果を返すことがあります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— 秘密鍵として使用する値。辞書秘密鍵型の値またはタプル値を返す式 (辞書設定に依存) 。ExpressionまたはTuple(T)default_value_expr— 辞書にid_expr秘密鍵を持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
対応する値がない場合は、default_value_expr パラメータとして渡された値を返します。
属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合、ClickHouse は例外をスローします。
Query
Response
dictGetUInt16
導入バージョン: v1.1.0 Dictionary の属性値を、辞書設定に関係なくUInt16 データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値 (辞書設定に依存) を返す式。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetUInt16OrDefault
導入バージョン: v1.1.0 Dictionary の設定にかかわらず、Dictionary 属性の値をUInt16 データ型に変換します。キーが見つからない場合は、指定したデフォルト値を返します。
この関数は非決定論的です。同じ引数であっても、異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値またはタプル値を返す式 (辞書の設定に依存) 。ExpressionまたはTuple(T)default_value_expr— 辞書にid_exprキーを持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
それ以外の場合は、default_value_expr パラメータとして渡された値を返します。
属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合、ClickHouse は例外を発生させます。
Query
Response
dictGetUInt32
導入バージョン: v1.1.0 辞書の設定にかかわらず、辞書の属性値をUInt32データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返す可能性があります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値 (辞書設定に応じる) を返す式。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetUInt32OrDefault
導入バージョン: v1.1.0 辞書設定にかかわらず、辞書属性の値をUInt32 データ型に変換します。キーが見つからない場合は、指定したデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値 (辞書設定に依存) を返す式。ExpressionまたはTuple(T)default_value_expr— 辞書にid_exprキーを持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
対応する値がない場合は、default_value_expr パラメータとして渡された値を返します。
ClickHouse は、属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetUInt64
導入バージョン: v1.1.0 辞書の設定にかかわらず、辞書属性の値をUInt64 データ型に変換します。
この関数は非決定論的です。同じ引数でも異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_name— Dictionary のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値を返す式 (辞書設定に依存) 。ExpressionまたはTuple(T)
id_expr に対応する Dictionary 属性の値を返します。
対応する値がない場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値を解析できない場合、または値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetUInt64OrDefault
導入バージョン: v1.1.0 Dictionary の属性値を、Dictionary の設定に関係なくUInt64 データ型に変換します。キーが見つからない場合は、指定されたデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_name— Dictionary のカラム名。StringまたはTuple(String)id_expr— 辞書キーの値。辞書キー型の値、またはタプル値 (辞書設定に依存) を返す式。ExpressionまたはTuple(T)default_value_expr— Dictionary にid_exprキーを持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する Dictionary 属性の値を返します。
存在しない場合は、default_value_expr パラメータとして渡された値を返します。
属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合、ClickHouse は例外をスローします。
Query
Response
dictGetUInt8
導入バージョン: v1.1.0 Dictionary の設定に関係なく、Dictionary 属性の値をUInt8 データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書名。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キー値。辞書キー型の値、またはタプル値 (辞書設定に依存) を返す式。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
該当する値がない場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
属性の値をパースできない場合、または値が属性のデータ型と一致しない場合、ClickHouse は例外をスローします。
Query
Response
dictGetUInt8OrDefault
導入バージョン: v1.1.0 辞書設定に関係なく、辞書属性の値をUInt8データ型に変換します。キーが見つからない場合は、指定されたデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_name— Dictionary のカラム名。StringまたはTuple(String)id_expr— キー値。Dictionary のキー型の値、またはタプル値を返す式 (dictionary configuration に依存) 。ExpressionまたはTuple(T)default_value_expr— Dictionary にid_exprキーを持つ行が存在しない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する Dictionary の属性値を返します。
該当しない場合は、default_value_expr パラメーターとして渡された値を返します。
ClickHouse は、属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetUUID
導入バージョン: v1.1.0 辞書の設定にかかわらず、辞書属性の値をUUID データ型に変換します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— 辞書の名前。Stringattr_name— 辞書のカラム名。StringまたはTuple(String)id_expr— キーの値。辞書キー型の値またはタプル値を返す式 (辞書設定に依存) 。ExpressionまたはTuple(T)
id_expr に対応する辞書属性の値を返します。
それ以外の場合は、辞書設定でその属性に指定された <null_value> 要素の内容を返します。
ClickHouse は、属性の値を解析できない場合、またはその値が属性のデータ型と一致しない場合に例外をスローします。
Query
Response
dictGetUUIDOrDefault
導入バージョン: v1.1.0 Dictionary の設定に関係なく、Dictionary 属性の値をUUID データ型に変換します。キーが見つからない場合は、指定されたデフォルト値を返します。
この関数は非決定論的です。同じ引数に対して異なる結果を返すことがあります。
dict_name— Dictionary の名前。Stringattr_name— Dictionary のカラム名。StringまたはTuple(String)id_expr— キー値。Dictionary キー型の値またはタプル値を返す式 (辞書の設定に依存) 。ExpressionまたはTuple(T)default_value_expr— Dictionary にid_exprキーを持つ行が含まれていない場合に返される値。ExpressionまたはTuple(T)
id_expr に対応する Dictionary 属性の値を返します。
存在しない場合は、default_value_expr パラメータとして渡された値を返します。
属性の値をパースできない場合、またはその値が属性のデータ型と一致しない場合、ClickHouse は例外をスローします。
Query
Response
dictHas
導入バージョン: v1.1.0 キーがDictionaryに存在するかどうかを判定します。この関数は非決定論的です。同じ引数に対して異なる結果を返す場合があります。
dict_name— Dictionary の名前。Stringid_expr— キー値const String
1、存在しない場合は 0 を返します。UInt8
例
Dictionary にキーが存在するか確認する
Query
Response
dictIsIn
導入バージョン: v1.1.0 Dictionary 内の階層チェーン全体をたどって、キーの祖先かどうかを確認します。この関数は非決定論的です。同じ引数でも異なる結果を返すことがあります。
dict_name— 辞書名。Stringchild_id_expr— 確認するキー。Stringancestor_id_expr—child_id_exprキーの祖先と見なされるキー。const String
child_id_expr が ancestor_id_expr の子でない場合は 0、child_id_expr が ancestor_id_expr の子である場合、または child_id_expr が ancestor_id_expr 自身である場合は 1 を返します。UInt8
例
階層関係を確認する
Query
Response