Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

SHOW

SHOW CREATE TABLE | DICTIONARY | VIEW | DATABASE

تعيد هذه العبارات عمودًا واحدًا من النوع String، يحتوي على استعلام CREATE المستخدم لإنشاء الكائن المحدد.

الصيغة

Syntaxsql
SHOW [CREATE] TABLE | TEMPORARY TABLE | DICTIONARY | VIEW | DATABASE [db.]table|view [INTO OUTFILE filename] [FORMAT format]

SHOW DATABASES

تُظهر هذه العبارة قائمة بجميع قواعد البيانات.

الصيغة

Syntaxsql
SHOW DATABASES [[NOT] LIKE | ILIKE '<pattern>'] [LIMIT <N>] [INTO OUTFILE filename] [FORMAT format]

وهو مطابق للاستعلام:

SELECT name FROM system.databases [WHERE name [NOT] LIKE | ILIKE '<pattern>'] [LIMIT <N>] [INTO OUTFILE filename] [FORMAT format]

أمثلة

في هذا المثال، نستخدم SHOW للحصول على أسماء قواعد البيانات التي تحتوي أسماؤها على تتابع الأحرف 'de':

Querysql
SHOW DATABASES LIKE '%de%'
Responsetext
┌─name────┐
│ default │
└─────────┘

يمكننا أيضًا القيام بذلك دون مراعاة حالة الأحرف:

Querysql
SHOW DATABASES ILIKE '%DE%'
Responsetext
┌─name────┐
│ default │
└─────────┘

أو اعرض أسماء قواعد البيانات التي لا تتضمن 'de' في أسمائها:

Querysql
SHOW DATABASES NOT LIKE '%de%'
Responsetext
┌─name───────────────────────────┐
│ _temporary_and_external_tables │
│ system                         │
│ test                           │
│ tutorial                       │
└────────────────────────────────┘

أخيرًا، يمكننا الحصول على اسمي أول قاعدتَي بيانات فقط:

Querysql
SHOW DATABASES LIMIT 2
Responsetext
┌─name───────────────────────────┐
│ _temporary_and_external_tables │
│ default                        │
└────────────────────────────────┘

انظر أيضًا

SHOW TABLES

تعرض عبارة SHOW TABLES قائمة بالجداول.

الصيغة

Syntaxsql
SHOW [FULL] [TEMPORARY] TABLES [{FROM | IN} <db>] [[NOT] LIKE | ILIKE '<pattern>'] [LIMIT <N>] [INTO OUTFILE <filename>] [FORMAT <format>]

إذا لم تُحدَّد عبارة FROM، فسيُرجع الاستعلام قائمة بالجداول من قاعدة البيانات الحالية.

هذه العبارة مطابقة للاستعلام التالي:

SELECT name FROM system.tables [WHERE name [NOT] LIKE | ILIKE '<pattern>'] [LIMIT <N>] [INTO OUTFILE <filename>] [FORMAT <format>]

أمثلة

في هذا المثال، نستخدم التعليمة SHOW TABLES للعثور على جميع الجداول التي تتضمن أسماؤها 'user':

Querysql
SHOW TABLES FROM system LIKE '%user%'
Responsetext
┌─name─────────────┐
│ user_directories │
│ users            │
└──────────────────┘

يمكننا أيضًا تنفيذ ذلك دون التفريق بين حالة الأحرف:

Querysql
SHOW TABLES FROM system ILIKE '%USER%'
Responsetext
┌─name─────────────┐
│ user_directories │
│ users            │
└──────────────────┘

أو للعثور على الجداول التي لا تحتوي أسماؤها على الحرف 's':

Querysql
SHOW TABLES FROM system NOT LIKE '%s%'
Responsetext
┌─name─────────┐
│ metric_log   │
│ metric_log_0 │
│ metric_log_1 │
└──────────────┘

أخيرًا، يمكننا الحصول على أسماء الجدولين الأولين فقط:

Querysql
SHOW TABLES FROM system LIMIT 2
Responsetext
┌─name───────────────────────────┐
│ aggregate_function_combinators │
│ asynchronous_metric_log        │
└────────────────────────────────┘

راجع أيضًا

SHOW COLUMNS

تعرض عبارة SHOW COLUMNS قائمة بالأعمدة.

الصيغة

Syntaxsql
SHOW [EXTENDED] [FULL] COLUMNS {FROM | IN} <table> [{FROM | IN} <db>] [{[NOT] {LIKE | ILIKE} '<pattern>' | WHERE <expr>}] [LIMIT <N>] [INTO
OUTFILE <filename>] [FORMAT <format>]

يمكن تحديد اسم قاعدة البيانات واسم الجدول بصيغة مختصرة على شكل <db>.<table>, أي إن FROM tab FROM db وFROM db.tab متكافئتان. إذا لم يتم تحديد قاعدة بيانات، فسيُرجع الاستعلام قائمة الأعمدة من قاعدة البيانات الحالية.

توجد أيضًا كلمتان مفتاحيتان اختياريتان: EXTENDED وFULL. لا يكون للكلمة المفتاحية EXTENDED أي تأثير حاليًا، وهي موجودة للتوافق مع MySQL. أما الكلمة المفتاحية FULL فتجعل الخرج يتضمن الأعمدة collation وcomment وprivilege.

تنتج العبارة SHOW COLUMNS جدول نتائج بالبنية التالية:

Column Description Type
field اسم العمود String
type نوع بيانات العمود. إذا أُجري الاستعلام عبر MySQL wire protocol، فسيُعرض اسم النوع المكافئ في MySQL. String
null YES إذا كان نوع بيانات العمود Nullable، وإلا NO String
key PRI إذا كان العمود جزءًا من المفتاح الأساسي، وSOR إذا كان العمود جزءًا من مفتاح الفرز، وإلا فتكون القيمة فارغة String
default تعبير default للعمود إذا كان من النوع ALIAS أو DEFAULT أو MATERIALIZED، وإلا NULL. Nullable(String)
extra معلومات إضافية، غير مستخدمة حاليًا String
collation (فقط إذا تم تحديد الكلمة المفتاحية FULL) Collation الخاصة بالعمود، وتكون دائمًا NULL لأن ClickHouse لا يدعم collations على مستوى العمود Nullable(String)
comment (فقط إذا تم تحديد الكلمة المفتاحية FULL) تعليق العمود String
privilege (فقط إذا تم تحديد الكلمة المفتاحية FULL) الامتياز الذي لديك على هذا العمود، وهو غير متاح حاليًا String

أمثلة

في هذا المثال، سنستخدم العبارة SHOW COLUMNS للحصول على معلومات عن جميع الأعمدة في الجدول 'orders'، بدءًا من 'delivery_':

Querysql
SHOW COLUMNS FROM 'orders' LIKE 'delivery_%'
Responsetext
┌─field───────────┬─type─────┬─null─┬─key─────┬─default─┬─extra─┐
│ delivery_date   │ DateTime │    0 │ PRI SOR │ ᴺᵁᴸᴸ    │       │
│ delivery_status │ Bool     │    0 │         │ ᴺᵁᴸᴸ    │       │
└─────────────────┴──────────┴──────┴─────────┴─────────┴───────┘

راجع أيضًا

SHOW DICTIONARIES

تعرض عبارة SHOW DICTIONARIES قائمةً بـالقواميس.

الصيغة

Syntaxsql
SHOW DICTIONARIES [FROM <db>] [LIKE '<pattern>'] [LIMIT <N>] [INTO OUTFILE <filename>] [FORMAT <format>]

إذا لم يتم تحديد عبارة FROM، فسيُرجع الاستعلام قائمة القواميس في قاعدة البيانات الحالية.

يمكنك الحصول على النتائج نفسها التي يُرجعها استعلام SHOW DICTIONARIES بالطريقة التالية:

SELECT name FROM system.dictionaries WHERE database = <db> [AND name LIKE <pattern>] [LIMIT <N>] [INTO OUTFILE <filename>] [FORMAT <format>]

أمثلة

يعرض الاستعلام التالي أول صفَّين من قائمة الجداول في قاعدة البيانات system التي تحتوي أسماؤها على reg.

Querysql
SHOW DICTIONARIES FROM db LIKE '%reg%' LIMIT 2
Responsetext
┌─name─────────┐
│ regions      │
│ region_names │
└──────────────┘

SHOW INDEX

يعرض قائمة بالمفتاح الأساسي وفهارس تخطي البيانات لجدول.

يوجد هذا الأمر أساسًا للتوافق مع MySQL. توفّر جداول النظام system.tables (للمفاتيح الأساسية) وsystem.data_skipping_indices (لفهارس تخطي البيانات) معلومات مكافئة، ولكن بطريقة أكثر اتساقًا مع ClickHouse.

الصيغة

Syntaxsql
SHOW [EXTENDED] {INDEX | INDEXES | INDICES | KEYS } {FROM | IN} <table> [{FROM | IN} <db>] [WHERE <expr>] [INTO OUTFILE <filename>] [FORMAT <format>]

يمكن تحديد اسم قاعدة البيانات واسم الجدول بصيغة مختصرة على الشكل <db>.<table>، أي إن FROM tab FROM db وFROM db.tab متكافئان. إذا لم تُحدَّد قاعدة بيانات، فإن الاستعلام يفترض قاعدة البيانات الحالية.

الكلمة المفتاحية الاختيارية EXTENDED ليس لها أي تأثير حاليًا، وهي موجودة للتوافق مع MySQL.

تنتج العبارة جدول نتائج بالبنية التالية:

العمود الوصف النوع
table اسم الجدول. String
non_unique دائمًا 1 لأن ClickHouse لا يدعم قيود التفرد. UInt8
key_name اسم الفهرس، أو PRIMARY إذا كان الفهرس فهرس مفتاح أساسي. String
seq_in_index بالنسبة إلى فهرس المفتاح الأساسي، موضع العمود بدءًا من 1. وبالنسبة إلى فهرس تخطي البيانات: يكون دائمًا 1. UInt8
column_name بالنسبة إلى فهرس المفتاح الأساسي، اسم العمود. وبالنسبة إلى فهرس تخطي البيانات: '' (سلسلة فارغة)، راجع الحقل "expression". String
collation ترتيب فرز العمود في الفهرس: A إذا كان تصاعديًا، وD إذا كان تنازليًا، وNULL إذا لم يكن مفروزًا. Nullable(String)
cardinality تقدير عدد القيم الفريدة في الفهرس. حاليًا يكون دائمًا 0. UInt64
sub_part دائمًا NULL لأن ClickHouse لا يدعم بادئات الفهرس مثل MySQL. Nullable(String)
packed دائمًا NULL لأن ClickHouse لا يدعم الفهارس المعبأة (كما في MySQL). Nullable(String)
null غير مستخدم حاليًا
index_type نوع الفهرس، مثل PRIMARY وMINMAX وBLOOM_FILTER وغيرها. String
comment معلومات إضافية عن الفهرس، وتكون حاليًا دائمًا '' (سلسلة فارغة). String
index_comment '' (سلسلة فارغة) لأن الفهارس في ClickHouse لا يمكن أن تحتوي على حقل COMMENT (كما في MySQL). String
visible إذا كان الفهرس مرئيًا للمُحسِّن، فيكون دائمًا YES. String
expression بالنسبة إلى فهرس تخطي البيانات، يكون تعبير الفهرس. وبالنسبة إلى فهرس المفتاح الأساسي: '' (سلسلة فارغة). String

أمثلة

في هذا المثال، نستخدم عبارة SHOW INDEX للحصول على معلومات عن جميع الفهارس في الجدول 'tbl'

Querysql
SHOW INDEX FROM 'tbl'
Responsetext
┌─table─┬─non_unique─┬─key_name─┬─seq_in_index─┬─column_name─┬─collation─┬─cardinality─┬─sub_part─┬─packed─┬─null─┬─index_type───┬─comment─┬─index_comment─┬─visible─┬─expression─┐
│ tbl   │          1 │ blf_idx  │ 1            │ 1           │ ᴺᵁᴸᴸ      │ 0           │ ᴺᵁᴸᴸ     │ ᴺᵁᴸᴸ   │ ᴺᵁᴸᴸ │ BLOOM_FILTER │         │               │ YES     │ d, b       │
│ tbl   │          1 │ mm1_idx  │ 1            │ 1           │ ᴺᵁᴸᴸ      │ 0           │ ᴺᵁᴸᴸ     │ ᴺᵁᴸᴸ   │ ᴺᵁᴸᴸ │ MINMAX       │         │               │ YES     │ a, c, d    │
│ tbl   │          1 │ mm2_idx  │ 1            │ 1           │ ᴺᵁᴸᴸ      │ 0           │ ᴺᵁᴸᴸ     │ ᴺᵁᴸᴸ   │ ᴺᵁᴸᴸ │ MINMAX       │         │               │ YES     │ c, d, e    │
│ tbl   │          1 │ PRIMARY  │ 1            │ c           │ A         │ 0           │ ᴺᵁᴸᴸ     │ ᴺᵁᴸᴸ   │ ᴺᵁᴸᴸ │ PRIMARY      │         │               │ YES     │            │
│ tbl   │          1 │ PRIMARY  │ 2            │ a           │ A         │ 0           │ ᴺᵁᴸᴸ     │ ᴺᵁᴸᴸ   │ ᴺᵁᴸᴸ │ PRIMARY      │         │               │ YES     │            │
│ tbl   │          1 │ set_idx  │ 1            │ 1           │ ᴺᵁᴸᴸ      │ 0           │ ᴺᵁᴸᴸ     │ ᴺᵁᴸᴸ   │ ᴺᵁᴸᴸ │ SET          │         │               │ YES     │ e          │
└───────┴────────────┴──────────┴──────────────┴─────────────┴───────────┴─────────────┴──────────┴────────┴──────┴──────────────┴─────────┴───────────────┴─────────┴────────────┘

راجع أيضًا

SHOW PROCESSLIST

يعرض محتوى جدول system.processes، الذي يتضمن قائمة بالاستعلامات قيد المعالجة حاليًا، باستثناء استعلامات SHOW PROCESSLIST.

الصيغة

Syntaxsql
SHOW PROCESSLIST [INTO OUTFILE filename] [FORMAT format]

يُرجِع الاستعلام SELECT * FROM system.processes بيانات عن جميع الاستعلامات الجارية حاليًا.

SHOW GRANTS

تعرض عبارة SHOW GRANTS الامتيازات الممنوحة لمستخدم.

الصيغة

Syntaxsql
SHOW GRANTS [FOR user1 [, user2 ...]] [WITH IMPLICIT] [FINAL]

إذا لم يُحدَّد المستخدم، فسيُرجع الاستعلام الامتيازات الخاصة بالمستخدم الحالي.

يتيح المُعدِّل WITH IMPLICIT إظهار الامتيازات الممنوحة ضمنيًا (على سبيل المثال، GRANT SELECT ON system.one)

يجمع المُعدِّل FINAL جميع الامتيازات الممنوحة للمستخدم وللأدوار الممنوحة له (مع التوريث)

SHOW CREATE USER

تعرض عبارة SHOW CREATE USER المعلمات التي استُخدمت عند إنشاء المستخدم.

الصيغة

Syntaxsql
SHOW CREATE USER [name1 [, name2 ...] | CURRENT_USER]

SHOW CREATE ROLE

تعرض عبارة SHOW CREATE ROLE المعلمات التي استُخدمت عند إنشاء الدور.

الصيغة

Syntaxsql
SHOW CREATE ROLE name1 [, name2 ...]

SHOW CREATE ROW POLICY

تُظهر عبارة SHOW CREATE ROW POLICY المعلمات التي استُخدمت عند إنشاء ROW POLICY.

الصيغة

Syntaxsql
SHOW CREATE [ROW] POLICY name ON [database1.]table1 [, [database2.]table2 ...]

SHOW CREATE QUOTA

تعرض عبارة SHOW CREATE QUOTA المَعلمات التي استُخدمت عند إنشاء حصة.

الصيغة

Syntaxsql
SHOW CREATE QUOTA [name1 [, name2 ...] | CURRENT]

SHOW CREATE SETTINGS PROFILE

تعرض العبارة SHOW CREATE SETTINGS PROFILE المعلمات المُستخدمة عند إنشاء ملف تعريف الإعدادات.

الصيغة

Syntaxsql
SHOW CREATE [SETTINGS] PROFILE name1 [, name2 ...]

SHOW USERS

تعرض عبارة SHOW USERS قائمةً بأسماء حسابات المستخدمين. للاطلاع على معلمات حسابات المستخدمين، راجع جدول النظام system.users.

الصيغة

Syntaxsql
SHOW USERS

SHOW ROLES

تعيد عبارة SHOW ROLES قائمة بالأدوار الأدوار. وللاطلاع على المعلمات الأخرى، راجع جداول النظام system.roles وsystem.role_grants.

الصيغة

Syntaxsql
SHOW [CURRENT|ENABLED] ROLES

SHOW PROFILES

تعرض عبارة SHOW PROFILES قائمة بـملفات تعريف الإعدادات. لعرض معلمات حسابات المستخدمين، راجع جدول النظام settings_profiles.

الصيغة

Syntaxsql
SHOW [SETTINGS] PROFILES

SHOW POLICIES

تعرض عبارة SHOW POLICIES قائمةً بـسياسات الصفوف للجدول المحدد. لعرض معلمات حسابات المستخدمين، راجع جدول النظام system.row_policies.

الصيغة

Syntaxsql
SHOW [ROW] POLICIES [ON [db.]table]

SHOW QUOTAS

تعرض عبارة SHOW QUOTAS قائمة بـالحصص. للاطلاع على معلمات الحصص، راجع جدول النظام system.quotas.

الصيغة

Syntaxsql
SHOW QUOTAS

SHOW QUOTA

تعرض عبارة SHOW QUOTA مقدار استهلاك الحصة لجميع المستخدمين أو للمستخدم الحالي. للاطّلاع على المعلمات الأخرى، راجع جدولَي النظام system.quotas_usage وsystem.quota_usage.

الصيغة

Syntaxsql
SHOW [CURRENT] QUOTA

SHOW ACCESS

تعرض عبارة SHOW ACCESS جميع المستخدمين، والأدوار، وملفات التعريف، وما إلى ذلك، وجميع الامتيازات الخاصة بها.

الصيغة

Syntaxsql
SHOW ACCESS

SHOW CLUSTER(S)

تعيد عبارة SHOW CLUSTER(S) قائمة بالتجمعات. تُسرد جميع التجمعات المتاحة في جدول system.clusters.

الصيغة

Syntaxsql
SHOW CLUSTER '<name>'
SHOW CLUSTERS [[NOT] LIKE|ILIKE '<pattern>'] [LIMIT <N>]

أمثلة

Querysql
SHOW CLUSTERS;
Responsetext
┌─cluster──────────────────────────────────────┐
│ test_cluster_two_shards                      │
│ test_cluster_two_shards_internal_replication │
│ test_cluster_two_shards_localhost            │
│ test_shard_localhost                         │
│ test_shard_localhost_secure                  │
│ test_unavailable_shard                       │
└──────────────────────────────────────────────┘
Querysql
SHOW CLUSTERS LIKE 'test%' LIMIT 1;
Responsetext
┌─cluster─────────────────┐
│ test_cluster_two_shards │
└─────────────────────────┘
Querysql
SHOW CLUSTER 'test_shard_localhost' FORMAT Vertical;
Responsetext
Row 1:
──────
cluster:                 test_shard_localhost
shard_num:               1
replica_num:             1
host_name:               localhost
host_address:            127.0.0.1
port:                    9000

SHOW SETTINGS

تعرض عبارة SHOW SETTINGS قائمة بإعدادات النظام وقيمها. وتسترجع البيانات من الجدول system.settings.

الصيغة

Syntaxsql
SHOW [CHANGED] SETTINGS LIKE|ILIKE <name>

البنود

يتيح LIKE|ILIKE تحديد نمط مطابقة لاسم الإعداد. ويمكن أن يتضمن أنماط glob مثل % أو _. ويكون بند LIKE حساسًا لحالة الأحرف، أما ILIKE فغير حساس لحالة الأحرف.

عند استخدام بند CHANGED، يُرجع الاستعلام فقط الإعدادات التي تغيّرت عن قيمها الافتراضية.

أمثلة

استعلام باستخدام العبارة LIKE:

Querysql
SHOW SETTINGS LIKE 'send_timeout';
Responsetext
┌─name─────────┬─type────┬─value─┐
│ send_timeout │ Seconds │ 300   │
└──────────────┴─────────┴───────┘

استعلام باستخدام البند ILIKE:

Querysql
SHOW SETTINGS ILIKE '%CONNECT_timeout%'
Responsetext
┌─name────────────────────────────────────┬─type─────────┬─value─┐
│ connect_timeout                         │ Seconds      │ 10    │
│ connect_timeout_with_failover_ms        │ Milliseconds │ 50    │
│ connect_timeout_with_failover_secure_ms │ Milliseconds │ 100   │
└─────────────────────────────────────────┴──────────────┴───────┘

استعلام باستخدام عبارة CHANGED:

Querysql
SHOW CHANGED SETTINGS ILIKE '%MEMORY%'
Responsetext
┌─name─────────────┬─type───┬─value───────┐
│ max_memory_usage │ UInt64 │ 10000000000 │
└──────────────────┴────────┴─────────────┘

SHOW SETTING

تعرض عبارة SHOW SETTING قيمة الإعداد الخاصة باسم الإعداد المحدد.

الصيغة

Syntaxsql
SHOW SETTING <name>

انظر أيضًا

SHOW FILESYSTEM CACHES

أمثلة

Querysql
SHOW FILESYSTEM CACHES
Responsetext
┌─Caches────┐
│ s3_cache  │
└───────────┘

انظر أيضًا

SHOW ENGINES

تعرض عبارة SHOW ENGINES محتوى جدول system.table_engines، الذي يتضمن وصفًا لمحركات الجداول التي يدعمها الخادم ومعلومات عن الميزات التي تدعمها.

الصيغة

Syntaxsql
SHOW ENGINES [INTO OUTFILE filename] [FORMAT format]

انظر أيضًا

SHOW FUNCTIONS

تعرض عبارة SHOW FUNCTIONS محتوى الجدول system.functions.

الصيغة

Syntaxsql
SHOW FUNCTIONS [LIKE | ILIKE '<pattern>']

إذا جرى تحديد عبارة LIKE أو ILIKE، فإن الاستعلام يُرجع قائمة بدوال النظام التي تتطابق أسماؤها مع <pattern> المحدَّد.

راجع أيضًا

SHOW MERGES

تُرجِع عبارة SHOW MERGES قائمة بعمليات الدمج. تُدرج جميع عمليات الدمج في جدول system.merges:

العمود الوصف
table اسم الجدول.
database اسم قاعدة البيانات التي يوجد فيها الجدول.
estimate_complete الوقت التقديري للاكتمال (بالثواني).
elapsed الوقت المنقضي (بالثواني) منذ بدء عملية الدمج.
progress النسبة المئوية للعمل المكتمل (من 0 إلى 100).
is_mutation 1 إذا كانت هذه العملية عبارة عن تعديل على جزء.
size_compressed الحجم الإجمالي للبيانات المضغوطة الخاصة بالأجزاء المدمجة.
memory_usage استهلاك الذاكرة لعملية الدمج.

الصيغة

Syntaxsql
SHOW MERGES [[NOT] LIKE|ILIKE '<table_name_pattern>'] [LIMIT <N>]

أمثلة

Querysql
SHOW MERGES;
Responsetext
┌─table──────┬─database─┬─estimate_complete─┬─elapsed─┬─progress─┬─is_mutation─┬─size_compressed─┬─memory_usage─┐
│ your_table │ default  │              0.14 │    0.36 │    73.01 │           0 │        5.40 MiB │    10.25 MiB │
└────────────┴──────────┴───────────────────┴─────────┴──────────┴─────────────┴─────────────────┴──────────────┘
Querysql
SHOW MERGES LIKE 'your_t%' LIMIT 1;
Responsetext
┌─table──────┬─database─┬─estimate_complete─┬─elapsed─┬─progress─┬─is_mutation─┬─size_compressed─┬─memory_usage─┐
│ your_table │ default  │              0.14 │    0.36 │    73.01 │           0 │        5.40 MiB │    10.25 MiB │
└────────────┴──────────┴───────────────────┴─────────┴──────────┴─────────────┴─────────────────┴──────────────┘

SHOW CREATE MASKING POLICY

تعرض عبارة SHOW CREATE MASKING POLICY المعلمات التي استُخدمت عند إنشاء سياسة الإخفاء.

الصيغة

Syntaxsql
SHOW CREATE MASKING POLICY name ON [database.]table
Navigation