دعم الجداول المؤقتة
يدعم ClickHouse الجداول المؤقتة التي تتميز بالخصائص التالية:
- تختفي الجداول المؤقتة عند انتهاء الجلسة، بما في ذلك عند فقدان الاتصال.
- يستخدم الجدول المؤقت محرك الجداول Memory إذا لم يُحدَّد محرك، ويمكنه استخدام أي محرك جداول باستثناء المحركين Replicated و
KeeperMap. - لا يمكن تحديد DB لجدول مؤقت، إذ يُنشأ خارج قواعد البيانات.
- يتعذر إنشاء جدول مؤقت باستخدام استعلام DDL موزع على جميع خوادم cluster (باستخدام
ON CLUSTER)، لأن هذا الجدول لا يوجد إلا في الجلسة الحالية. - إذا كان للجدول المؤقت الاسم نفسه لجدول آخر، وكان استعلام يحدد اسم الجدول دون تحديد DB، فسيُستخدم الجدول المؤقت.
- في معالجة الاستعلامات الموزعة، تُمرَّر الجداول المؤقتة ذات محرك Memory المستخدمة في استعلام إلى الخوادم البعيدة.
Syntax
لإنشاء جدول مؤقت، استخدم الصيغة التالية:
CREATE [OR REPLACE] TEMPORARY TABLE [IF NOT EXISTS] table_name
(
name1 [type1] [DEFAULT|MATERIALIZED|ALIAS expr1],
name2 [type2] [DEFAULT|MATERIALIZED|ALIAS expr2],
...
) [ENGINE = engine]في معظم الحالات، لا تُنشأ الجداول المؤقتة يدويًا، بل عند استخدام بيانات خارجية في استعلام أو عند استخدام (GLOBAL) IN الموزّع. لمزيد من المعلومات، راجع الأقسام ذات الصلة.
يمكن استخدام جداول ذات ENGINE = Memory بدلًا من الجداول المؤقتة.