بالنسبة إلى القواميس التي أُنشئت باستخدام DDL queries، يجب تحديد المعلَمة
dict_name بشكل كامل، مثل <database>.<dict_name>. وإلا فستُستخدم قاعدة البيانات الحالية.قواميس الأمثلة
تستخدم الأمثلة في هذا القسم القواميس التالية. يمكنك إنشاؤها في ClickHouse لتشغيل أمثلة الدوال الموضّحة أدناه.قاموس توضيحي لدالتي dictGet<T> و dictGet<T>OrDefault
قاموس توضيحي لدالتي dictGet<T> و dictGet<T>OrDefault
قاموس توضيحي لـ dictGetAll
قاموس توضيحي لـ dictGetAll
أنشئ جدولًا لتخزين بيانات قاموس regexp tree:أدرِج البيانات في الجدول:أنشئ قاموس regexp tree:
مثال على قاموس بمفتاح نطاق
مثال على قاموس بمفتاح نطاق
أنشئ جدول الإدخال:أدرج البيانات في جدول الإدخال:أنشئ القاموس:
مثال على قاموس بمفتاح مركب
مثال على قاموس بمفتاح مركب
أنشئ الجدول المصدر:أدرج البيانات في الجدول المصدر:أنشئ القاموس:
مثال على قاموس هرمي
مثال على قاموس هرمي
أنشئ الجدول المصدر:أدرج البيانات في الجدول المصدر:أنشئ القاموس:
تمرير المفاتيح إلى دوال القاموس
تعتمد وسيطة المفتاح (id_expr) في دوال مثل dictGet وdictGetOrDefault وdictGetOrNull وdictHas على مفتاح القاموس:
- بالنسبة إلى قاموس ذي مفتاح بسيط (
UInt64)، مرّر قيمة المفتاح مباشرة:
- بالنسبة إلى قاموس ذي مفتاح مركب (معقّد) يتألف من أكثر من سمة واحدة، مرّر قيم المفتاح على شكل tuple:
- عندما يتألف المفتاح المركب من سمة واحدة، يمكن تمرير قيمة المفتاح مباشرةً، من دون تضمينها داخل
tuple. الطريقتان التاليتان صحيحتان ومتكافئتان:
ip_trie، التي يكون مفتاحها سمة واحدة. ويمكن تمرير عنوان IP المراد البحث عنه مباشرةً:
dictGet
أُضيفت في: v18.16.0 تسترجع القيم من القاموس.هذه الدالة غير حتمية: يمكن أن تُرجِع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_names— اسم عمود القاموس، أو Tuple من أسماء الأعمدة.StringأوTuple(String)id_expr— قيمة المفتاح. بالنسبة إلى قاموس ذي مفتاح بسيط، تعبير يُرجع قيمةUInt64. وبالنسبة إلى قاموس ذي مفتاح مركب، تعبير يُرجع Tuple من قيم المفاتيح. وإذا كان المفتاح المركب يتكون من سمة واحدة، فيمكن تمرير قيمتها مباشرةً، من دون تغليفها فيtuple.UInt64أوTuple(T)
<null_value> المحدد للسمة في تهيئة القاموس.
أمثلة
استرجاع سمة واحدة
Query
Response
Query
Response
dictGetAll
أُضيفت في: v23.5.0 تسترجع قيم السمات لجميع العُقد التي طابقت كل مفتاح في قاموس شجرة التعبير النمطي. وباستثناء أنها تُرجع قيمًا من النوعArray(T) بدلًا من T، تعمل هذه الدالة بصورة مماثلة لـ dictGet.
هذه الدالة غير حتمية: قد تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_names— اسم عمود القاموس، أو Tuple من أسماء الأعمدة.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)limit— اختياري. الحد الأقصى لطول كل مصفوفة قيم مُعادة. عند الاقتطاع، تُمنح العقد الفرعية أولوية على العقد الأصلية، وبخلاف ذلك يُراعى ترتيب القائمة المحدد لقاموس شجرة Regexp. إذا لم يُحدَّد، فسيكون طول المصفوفة غير محدود.UInt*
id_expr لكل سمة محددة بواسطة attr_names.
إذا لم يكن في القاموس مفتاح يقابل id_expr، فستُرجع مصفوفة فارغة.
يطرح ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Array(T)
أمثلة
مثال على الاستخدام
Query
Response
dictGetChildren
أُضيف في: v21.4.0 يعيد الأبناء من المستوى الأول في مصفوفة من الفهارس. وهو التحويل العكسي لـ dictGetHierarchy.هذه الدالة غير حتمية: يمكن أن تُرجِع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringkey— المفتاح المطلوب التحقق منه.const String
Array(UInt64)
أمثلة
الحصول على الأبناء المباشرين لقاموس
Query
Response
dictGetDate
قُدِّم في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتDate بغضّ النظر عن تهيئة القاموس.
هذه الدالة غير حتمية: قد تُرجِع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجِع قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب تهيئة القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فتُرجِع محتوى العنصر <null_value> المحدد لهذه السمة في تهيئة القاموس.
يُطلق ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetDateOrDefault
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتDate بغضّ النظر عن تهيئة القاموس، أو يعيد القيمة الافتراضية المقدَّمة إذا لم يُعثر على المفتاح.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب تهيئة القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) التي تُعاد إذا لم يكن القاموس يحتوي على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فتُرجع القيمة المُمرَّرة في المعامل default_value_expr.
يُطلق ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetDateTime
تم تقديمه في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتDateTime بغض النظر عن تهيئة القاموس.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للوسائط نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب إعدادات القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فإنه يعيد محتوى العنصر <null_value> المحدد لهذه السمة في إعدادات القاموس.
يطرح ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetDateTimeOrDefault
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتDateTime بغضّ النظر عن تهيئة القاموس، أو يُرجِع القيمة الافتراضية المقدَّمة إذا لم يُعثر على المفتاح.
هذه الدالة غير حتمية: قد تُرجِع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب إعدادات القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) المُعادة إذا لم يحتوِ القاموس على صف مفتاحهid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فتعيد القيمة المُمرَّرة في المعامل default_value_expr.
يطرح ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة، أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetDescendants
طُرح في: v21.4.0 يعيد جميع العناصر المتحدّرة كما لو جرى تطبيق الدالةdictGetChildren تكراريًا level مرات.
هذه الدالة غير حتمية: قد تُرجِع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringkey— المفتاح المطلوب التحقق منه.const Stringlevel— المفتاح المطلوب التحقق منه. مستوى التسلسل الهرمي. إذا كانت قيمةlevel = 0، فسيُرجِع جميع المتحدرين حتى النهاية.UInt8
Array(UInt64)
أمثلة
الحصول على الأبناء من المستوى الأول لقاموس
Query
Response
dictGetFloat32
قُدِّم في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتFloat32 بغضّ النظر عن إعدادات القاموس.
هذه الدالة غير حتمية: يمكن أن تعيد نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يعيد قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب إعدادات القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فيعيد محتوى العنصر <null_value> المحدد لهذه السمة في إعدادات القاموس.
يُصدر ClickHouse استثناءً إذا تعذر عليه تحليل قيمة السمة أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetFloat32OrDefault
أُضيفت في: v1.1.0 تُحوِّل قيمة سمة القاموس إلى نوع البياناتFloat32 بغض النظر عن تهيئة القاموس، أو تُرجِع القيمة الافتراضية المقدَّمة إذا لم يُعثر على المفتاح.
هذه الدالة غير حتمية: يمكنها إرجاع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) المُعادة إذا كان القاموس لا يحتوي على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فتعيد القيمة المُمرَّرة في المعامل default_value_expr.
يطرح ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا لم تطابق القيمة نوع بيانات السمة.
Query
Response
dictGetFloat64
قُدِّم في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتFloat64 بغضّ النظر عن تهيئة القاموس.
هذه الدالة غير حتمية: يمكن أن تُرجِع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب تهيئة القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فتُعيد محتوى العنصر <null_value> المحدد لهذه السمة في تهيئة القاموس.
يطرح ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا لم تطابق القيمة نوع بيانات السمة.
Query
Response
dictGetFloat64OrDefault
أُضيفت في: v1.1.0 تحوِّل قيمة سمة القاموس إلى نوع البياناتFloat64 بغض النظر عن إعدادات القاموس، أو تُرجِع القيمة الافتراضية الموفَّرة إذا لم يُعثر على المفتاح.
هذه الدالة غير حتمية: يمكن أن تُرجِع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب إعدادات القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) المُعادة إذا لم يحتوِ القاموس على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فسيُرجع القيمة المُمرَّرة في المعامل default_value_expr.
يُطلق ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا لم تطابق القيمة نوع بيانات السمة.
Query
Response
dictGetHierarchy
قُدِّم في: v1.1.0 ينشئ مصفوفة تحتوي على جميع أسلاف مفتاح في القاموس الهرمي.هذه الدالة غير حتمية: قد تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringkey— قيمة المفتاح.const String
Array(UInt64)
أمثلة
الحصول على التسلسل الهرمي لمفتاح
Query
Response
dictGetIPv4
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتIPv4 بغضّ النظر عن تهيئة القاموس.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة من نوعTuple(بحسب إعدادات القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فيُرجع محتوى العنصر <null_value> المحدد لهذه السمة في إعدادات القاموس.
يُطلق ClickHouse استثناءً إذا تعذر عليه تفسير قيمة السمة، أو إذا لم تتطابق القيمة مع نوع بيانات السمة.
Query
Response
dictGetIPv4OrDefault
أُضيف في: v23.1.0 يحوِّل قيمة سمة القاموس إلى نوع البياناتIPv4 بغضّ النظر عن تهيئة القاموس، أو يُرجع القيمة الافتراضية المقدَّمة إذا لم يتم العثور على المفتاح.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للوسائط نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)default_value_expr— القيمة أو القيم التي تُرجع إذا لم يكن القاموس يحتوي على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فتُرجع القيمة المُمرَّرة في المعامل default_value_expr.
يُطلِق ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا لم تطابق القيمة نوع بيانات السمة.
Query
Response
dictGetIPv6
أُضيف في: v23.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتIPv6 بغضّ النظر عن تهيئة القاموس.
هذه الدالة غير حتمية: قد تُرجع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب تهيئة القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فتُرجع محتوى العنصر <null_value> المحدد للسمة في تهيئة القاموس.
يُصدر ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetIPv6OrDefault
أُضيف في: v23.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتIPv6 بغضّ النظر عن تهيئة القاموس، أو يعيد القيمة الافتراضية المقدَّمة إذا لم يُعثر على المفتاح.
هذه الدالة غير حتمية: قد تعيد نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يعيد قيمة من نوع مفتاح القاموس أو قيمة tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) التي تُعاد إذا لم يحتوِ القاموس على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فتعيد القيمة المُمرَّرة عبر المعامل default_value_expr.
يطلق ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا لم تتطابق القيمة مع نوع بيانات السمة.
Query
Response
dictGetInt16
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتInt16 بغضّ النظر عن إعدادات القاموس.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فيُعيد محتوى العنصر <null_value> المحدد لهذه السمة في تهيئة القاموس.
يطرح ClickHouse استثناءً إذا تعذر عليه تحليل قيمة السمة أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetInt16OrDefault
قُدِّم في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتInt16 بغضّ النظر عن إعدادات القاموس، أو يعيد القيمة الافتراضية المحددة إذا لم يتم العثور على المفتاح.
هذه الدالة غير حتمية: قد تُرجع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب تهيئة القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) المُعادة إذا كان القاموس لا يحتوي على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فيعيد القيمة المُمرَّرة في المعامل 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 يحوّل قيمة سمة القاموس إلى نوع البياناتInt32 بغضّ النظر عن إعدادات القاموس، أو يعيد القيمة الافتراضية المقدَّمة إذا لم يتم العثور على المفتاح.
هذه الدالة غير حتمية: قد تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب إعدادات القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) التي تُرجع إذا لم يحتوِ القاموس على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا تُرجع القيمة الممرَّرة في المعامل default_value_expr.
يُصدر ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetInt64
قُدِّم في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتInt64 بغضّ النظر عن تهيئة القاموس.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للوسائط نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب إعدادات القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فتُرجع محتوى العنصر <null_value> المحدد لهذه السمة في إعدادات القاموس.
يُصدر ClickHouse استثناءً إذا تعذر عليه تحليل قيمة السمة أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetInt64OrDefault
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتInt64 بغض النظر عن تهيئة القاموس، أو يعيد القيمة الافتراضية المقدَّمة إذا لم يُعثر على المفتاح.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب إعدادات القاموس).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— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب إعدادات القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فتُرجع محتوى العنصر <null_value> المحدد لهذه السمة في إعدادات القاموس.
يطرح ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا لم تطابق القيمة نوع بيانات السمة.
Query
Response
dictGetInt8OrDefault
تم تقديمه في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتInt8 بغضّ النظر عن تكوين القاموس، أو يعيد القيمة الافتراضية المقدَّمة إذا لم يُعثر على المفتاح.
هذه الدالة غير حتمية: يمكن أن تعيد نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يعيد قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) المعادة إذا كان القاموس لا يحتوي على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فيعيد القيمة المُمرَّرة في المعامل default_value_expr.
يطرح ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا لم تطابق القيمة نوع بيانات السمة.
Query
Response
dictGetKeys
تم طرحها في: v25.12.0 تعيد مفتاح/مفاتيح القاموس التي تكون سمتها مساوية للقيمة المحددة. وهذه هي معكوس الدالةdictGet لسمة واحدة.
استخدم الإعداد max_reverse_dictionary_lookup_cache_size_bytes لتحديد حد أقصى لحجم ذاكرة التخزين المؤقت للبحث العكسي الخاصة بكل استعلام والمستخدَمة بواسطة dictGetKeys.
تخزّن ذاكرة التخزين المؤقت Tuples المفاتيح المتسلسلة لكل قيمة سمة لتجنّب إعادة فحص القاموس ضمن الاستعلام نفسه.
ولا تكون ذاكرة التخزين المؤقت دائمة عبر الاستعلامات. وعند بلوغ الحد الأقصى، تُطرَد الإدخالات وفق آلية LRU.
ويكون ذلك أكثر فعالية مع القواميس الكبيرة عندما يكون للإدخال عدد قيم مميزة منخفض، وتكون مجموعة العمل ضمن حدود ذاكرة التخزين المؤقت. اضبطه على 0 لتعطيل التخزين المؤقت.
هذه الدالة غير حتمية: إذ يمكنها إرجاع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— السمة المراد مطابقتها.Stringvalue_expr— القيمة المراد مطابقتها مع السمة.Expression
value_expr. وبالنسبة إلى القواميس متعددة المفاتيح: مصفوفة من tuples للمفاتيح التي تكون سمتها مساوية لـ value_expr. إذا لم تكن هناك سمة في القاموس تقابل value_expr، فستُعاد مصفوفة فارغة. ويطرح ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو تعذّر تحويل القيمة إلى نوع بيانات السمة.
أمثلة
مثال على الاستخدام
Query
Response
dictGetOrDefault
تم تقديمه في: v18.16.0 يسترجع قيماً من قاموس، مع إرجاع قيمة افتراضية إذا لم يتم العثور على المفتاح.هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_names— اسم عمود القاموس، أوTupleمن أسماء الأعمدة.StringأوTuple(String)id_expr— قيمة المفتاح. بالنسبة إلى قاموس ذي مفتاح بسيط، تعبير يُرجع قيمةUInt64. وبالنسبة إلى قاموس ذي مفتاح مركب، تعبير يُرجعTupleمن قيم المفاتيح. إذا كان المفتاح المركب يتكون من سمة واحدة، فيمكن تمرير قيمتها مباشرةً، من دون تغليفها داخلtuple.UInt64أوTuple(T)default_value— القيمة الافتراضية التي تُعاد إذا لم يُعثر على المفتاح. يجب أن يطابق النوع نوع بيانات السمة.
id_expr إذا وُجد المفتاح.
إذا لم يُعثر على المفتاح، تُعيد قيمة default_value المقدَّمة.
أمثلة
الحصول على قيمة باستخدام قيمة افتراضية
Query
Response
dictGetOrNull
أُضيفت في: v21.4.0 تسترجع قيماً من قاموس، وتُرجِع NULL إذا لم يتم العثور على المفتاح.هذه الدالة غير حتمية: قد تُرجِع نتائج مختلفة للوسائط نفسها.
dict_name— اسم القاموس. قيمة حرفية من نوع String. -attr_name— اسم العمود المطلوب استرجاعه. قيمة حرفية من نوع String. -id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس.
id_expr إذا تم العثور على المفتاح.
إذا لم يتم العثور على المفتاح، تُرجع NULL.
أمثلة
مثال باستخدام قاموس ذي مفتاح نطاقي
Query
Response
dictGetRoot
قُدِّمت في: v26.7.0 تعيد أعلى سلف (الجذر) لمفتاح في قاموس هرمي. وهذا مكافئ عمليًا لأخذ آخر عنصر من المصفوفة التي تعيدها dictGetHierarchy، أيdictGetHierarchy(dict_name, key)[-1].
إذا كان المفتاح نفسه عقدة من المستوى الأعلى في التسلسل الهرمي، فسيُعاد المفتاح. وإذا لم يكن المفتاح موجودًا في القاموس، فستُعاد القيمة 0.
هذه الدالة غير حتمية: فقد تعيد نتائج مختلفة للوسيطات نفسها.
UInt64
أمثلة
الحصول على الجذر الخاص بمفتاح
Query
Response
dictGetString
استُحدث في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتString بغضّ النظر عن إعدادات القاموس.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب إعدادات القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فتُرجع محتوى العنصر <null_value> المحدد لهذه السمة في إعدادات القاموس.
يُطلق ClickHouse استثناءً إذا تعذر عليه تحليل قيمة السمة أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetStringOrDefault
أُضيف في: v1.1.0 يحوِّل قيمة سمة القاموس إلى نوع البياناتString بغضّ النظر عن تهيئة القاموس، أو يعيد القيمة الافتراضية المقدَّمة إذا لم يتم العثور على المفتاح.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب إعدادات القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) المُعادة إذا لم يكن القاموس يحتوي على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فتُرجع القيمة المُمرَّرة في المعامل default_value_expr.
يطرح ClickHouse استثناء إذا تعذّر عليه تحليل قيمة السمة أو إذا لم تكن القيمة مطابقة لنوع بيانات السمة.
Query
Response
dictGetUInt16
قُدِّم في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتUInt16 بغض النظر عن إعدادات القاموس.
هذه الدالة غير حتمية: قد تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم العمود في القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب إعدادات القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فإنه يعيد محتوى العنصر <null_value> المحدد للسمة في إعدادات القاموس.
يُطلق ClickHouse استثناءً إذا تعذر عليه تحليل قيمة السمة أو كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetUInt16OrDefault
أُضيف في: v1.1.0 يحوِّل قيمة سمة القاموس إلى نوع البياناتUInt16 بغض النظر عن إعدادات القاموس، أو يعيد القيمة الافتراضية المقدَّمة إذا لم يُعثر على المفتاح.
هذه الدالة غير حتمية: إذ يمكنها إرجاع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم العمود في القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يعيد قيمة من نوع مفتاح القاموس أو قيمةTuple(بحسب إعدادات القاموس).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— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فتُرجِع محتوى العنصر <null_value> المحدد لهذه السمة في تهيئة القاموس.
يُصدر ClickHouse استثناءً إذا تعذر عليه تحليل قيمة السمة أو كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetUInt32OrDefault
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتUInt32 بغضّ النظر عن إعدادات القاموس، أو يعيد القيمة الافتراضية المقدَّمة إذا لم يتم العثور على المفتاح.
هذه الدالة غير حتمية: قد تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة من نوع Tuple (بحسب تهيئة القاموس).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— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فتُرجع محتوى العنصر <null_value> المحدد لهذه السمة في تهيئة القاموس.
يطرح ClickHouse استثناءً إذا تعذر عليه تحليل قيمة السمة أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetUInt64OrDefault
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتUInt64 بغضّ النظر عن تهيئة القاموس، أو يعيد القيمة الافتراضية المقدَّمة إذا لم يُعثر على المفتاح.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب إعدادات القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) التي تُرجع إذا لم يكن القاموس يحتوي على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فتُرجع القيمة المُمرَّرة في المعامل default_value_expr.
يُصدر ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا لم تطابق القيمة نوع بيانات السمة.
Query
Response
dictGetUInt8
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتUInt8 بغض النظر عن إعدادات القاموس.
هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فيُرجع محتوى العنصر <null_value> المحدد لهذه السمة في تهيئة القاموس.
يطرح ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetUInt8OrDefault
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتUInt8 بغضّ النظر عن تهيئة القاموس، أو يعيد القيمة الافتراضية المقدَّمة إذا لم يُعثر على المفتاح.
هذه الدالة غير حتمية: قد تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)default_value_expr— القيمة (أو القيم) المُعادة إذا لم يكن القاموس يحتوي على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فيُرجع القيمة المُمرَّرة في الوسيط default_value_expr.
يُطلق ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictGetUUID
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتUUID بغض النظر عن إعدادات القاموس.
هذه الدالة غير حتمية: قد تُرجع نتائج مختلفة للمعاملات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم العمود في القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة Tuple (بحسب تهيئة القاموس).ExpressionأوTuple(T)
id_expr،
وإلا فيُرجع محتوى العنصر <null_value> المحدد لهذه السمة في تهيئة القاموس.
يطرح ClickHouse استثناءً إذا تعذر عليه تحليل قيمة السمة أو إذا لم تطابق القيمة نوع بيانات السمة.
Query
Response
dictGetUUIDOrDefault
أُضيف في: v1.1.0 يحوّل قيمة سمة القاموس إلى نوع البياناتUUID بغضّ النظر عن إعدادات القاموس، أو يعيد القيمة الافتراضية المُقدَّمة إذا لم يتم العثور على المفتاح.
هذه الدالة غير حتمية: إذ يمكنها إرجاع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringattr_name— اسم عمود القاموس.StringأوTuple(String)id_expr— قيمة المفتاح. تعبير يُرجع قيمة من نوع مفتاح القاموس أو قيمة tuple (بحسب إعداد القاموس).ExpressionأوTuple(T)default_value_expr— القيمة أو القيم التي تُرجع إذا لم يكن القاموس يحتوي على صف بالمفتاحid_expr.ExpressionأوTuple(T)
id_expr،
وإلا فتُرجع القيمة المُمرَّرة في الوسيط default_value_expr.
يطرح ClickHouse استثناءً إذا تعذّر عليه تحليل قيمة السمة أو إذا كانت القيمة لا تطابق نوع بيانات السمة.
Query
Response
dictHas
أُضيفت في: v1.1.0 يتحقق مما إذا كان المفتاح موجودًا في القاموس.هذه الدالة غير حتمية: قد تُرجِع نتائج مختلفة للوسائط نفسها.
dict_name— اسم القاموس.Stringid_expr— قيمة المفتاحconst String
1 إذا كان المفتاح موجودًا، وإلا فتُرجِع 0. UInt8
أمثلة
التحقق من وجود مفتاح في القاموس
Query
Response
dictIsIn
طُرِحت في: v1.1.0 يتحقق من السلف الخاص بمفتاح عبر السلسلة الهرمية كاملةً في القاموس.هذه الدالة غير حتمية: يمكن أن تُرجع نتائج مختلفة للوسيطات نفسها.
dict_name— اسم القاموس.Stringchild_id_expr— المفتاح المراد التحقق منه.Stringancestor_id_expr— السلف المفترض للمفتاحchild_id_expr.const String
0 إذا لم يكن child_id_expr تابعًا لـ ancestor_id_expr، وتُرجع 1 إذا كان child_id_expr تابعًا لـ ancestor_id_expr أو إذا كان child_id_expr هو نفسه ancestor_id_expr. UInt8
أمثلة
التحقق من العلاقة الهرمية
Query
Response