> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> جدول نظام يسرد الإسقاطات الافتراضية (what-if) المعرَّفة في الجلسة الحالية

# system.hypothetical_projections

## الوصف

يسرد كل إسقاط افتراضي (what-if) معرَّف في الجلسة الحالية. راجع [`CREATE HYPOTHETICAL PROJECTION`](/docs/ar/reference/statements/hypothetical-projection#create-hypothetical-projection) و[`EXPLAIN WHATIF`](/docs/ar/reference/statements/explain#explain-whatif).

تقتصر المحتويات على نطاق الجلسة: فكل اتصال لا يرى سوى إسقاطاته الافتراضية الخاصة، ويكون الجدول فارغًا إذا لم يُنشأ أي منها في الجلسة الحالية.

يجري تحديد `(database, table)` الحاليين عبر معرّف UUID في وقت تنفيذ الاستعلام، لذا فهما يعكسان عمليات `RENAME TABLE`، كما تُخفى تلقائيًا الإدخالات الخاصة بالجداول المحذوفة.

## الأعمدة

* `database` ([String](/docs/ar/reference/data-types/string)) — اسم قاعدة البيانات
* `table` ([String](/docs/ar/reference/data-types/string)) — اسم الجدول
* `name` ([String](/docs/ar/reference/data-types/string)) — اسم الإسقاط
* `type` ([Enum8('Normal' = 0, 'Aggregate' = 1)](/docs/ar/reference/data-types/enum)) — نوع الإسقاط
* `sorting_key` ([Array(String)](/docs/ar/reference/data-types/array)) — مفتاح فرز الإسقاط
* `query` ([String](/docs/ar/reference/data-types/string)) — استعلام SELECT الخاص بالإسقاط، ويكون فارغًا في حالة صيغة INDEX ... TYPE ...
* `definition` ([String](/docs/ar/reference/data-types/string)) — التصريح الكامل للإسقاط كما هو مكتوب
* `settings` ([Map(String, String)](/docs/ar/reference/data-types/map)) — إعدادات الإسقاط المأخوذة من WITH SETTINGS

## أمثلة

```sql theme={null}
CREATE HYPOTHETICAL PROJECTION p_by_b ON t (SELECT a, b ORDER BY b);
SELECT name, type, sorting_key FROM system.hypothetical_projections;
```

```text theme={null}
┌─name───┬─type───┬─sorting_key─┐
│ p_by_b │ Normal │ ['b']       │
└────────┴────────┴─────────────┘
```

## اطّلع أيضًا

* [`CREATE HYPOTHETICAL PROJECTION`](/docs/ar/reference/statements/hypothetical-projection#create-hypothetical-projection)
* [`EXPLAIN WHATIF`](/docs/ar/reference/statements/explain#explain-whatif)
