> ## 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.

> توثيق دوال الجداول

# دوال الجداول

دوال الجداول هي أساليب لإنشاء الجداول.

<div id="usage">
  ## الاستخدام
</div>

يمكن استخدام دوال الجداول في العبارة [`FROM`](/docs/ar/reference/statements/select/from)
ضمن استعلام `SELECT`. على سبيل المثال، يمكنك استخدام `SELECT` لقراءة البيانات من ملف على جهازك
المحلي باستخدام دالة الجدول `file`.

```bash title="Query" theme={null}
echo "1, 2, 3" > example.csv
```

```text title="Response" theme={null}
./clickhouse client
:) SELECT * FROM file('example.csv')
┌─c1─┬─c2─┬─c3─┐
│  1 │  2 │  3 │
└────┴────┴────┘
```

يمكنك أيضًا استخدام دوال الجداول لإنشاء جدول مؤقت لا يكون متاحًا
إلا في الاستعلام الحالي. على سبيل المثال:

```sql title="Query" theme={null}
SELECT * FROM generateSeries(1,5);
```

```response title="Response" theme={null}
┌─generate_series─┐
│               1 │
│               2 │
│               3 │
│               4 │
│               5 │
└─────────────────┘
```

يُحذف الجدول عند انتهاء الاستعلام.

يمكن استخدام دوال الجداول لإنشاء الجداول، وفق الصياغة التالية:

```sql title="Query" theme={null}
CREATE TABLE [IF NOT EXISTS] [db.]table_name AS table_function()
```

على سبيل المثال:

```sql title="Query" theme={null}
CREATE TABLE series AS generateSeries(1, 5);
SELECT * FROM series;
```

```response title="Response" theme={null}
┌─generate_series─┐
│               1 │
│               2 │
│               3 │
│               4 │
│               5 │
└─────────────────┘
```

أخيرًا، يمكن أيضًا استخدام دوال الجداول لتنفيذ `INSERT` للبيانات إلى جدول. على سبيل المثال،
يمكننا كتابة محتويات الجدول الذي أنشأناه في المثال السابق
إلى ملف على القرص باستخدام دالة الجدول `file` مرة أخرى:

```sql title="Query" theme={null}
INSERT INTO FUNCTION file('numbers.csv', 'CSV') SELECT * FROM series;
```

```bash title="Query" theme={null}
cat numbers.csv
1
2
3
4
5
```

<Note>
  لا يمكنك استخدام دوال الجداول إذا كان الإعداد [allow\_ddl](/docs/ar/reference/settings/session-settings#allow_ddl) معطّلًا.
</Note>
