> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> توثيق تعليمة ALTER TABLE ... DELETE

# ALTER TABLE ... DELETE

```sql theme={null}
ALTER TABLE [db.]table [ON CLUSTER cluster] DELETE [IN PARTITION partition_expr1 [, partition_expr2 ...]] WHERE filter_expr
```

يحذف البيانات المطابقة لتعبير التصفية المحدد. ويُنَفَّذ على هيئة [mutation](/ar/reference/statements/alter/index#mutations).

<Warning>
  تشير البادئة `ALTER TABLE` إلى أن هذه عملية ثقيلة، بخلاف الاستعلامات المماثلة في قواعد بيانات OLTP. تعيد `ALTER TABLE ... DELETE` كتابة كل جزء بيانات يحتوي على صفوف تطابق تعبير التصفية، مما يولّد قدرًا كبيرًا من عمليات الإدخال/الإخراج للكتابة. استخدمها باعتدال، إذ قد تؤثر في أداء `SELECT`.

  بالنسبة إلى جداول `MergeTree`، يُنصح باستخدام استعلام [`DELETE FROM` استعلام](/ar/reference/statements/delete)، لأنه ينفّذ حذفًا خفيفًا وقد يكون أسرع بكثير. بالنسبة إلى أعباء العمل التي تتطلب عمليات حذف أو تصحيح متكررة، يُنصح باستخدام [`ReplacingMergeTree`](/ar/concepts/features/operations/update/replacing-merge-tree) أو [`CollapsingMergeTree`](/ar/reference/engines/table-engines/mergetree-family/collapsingmergetree).
</Warning>

يجب أن يكون `filter_expr` من النوع `UInt8`. ويحذف الاستعلام الصفوف في الجدول التي تأخذ فيها هذا التعبير قيمة غير صفرية.

يمكن أن يحتوي الاستعلام الواحد على عدة أوامر مفصولة بفواصل.

تحصر عبارة `IN PARTITION` الـ mutation في الأقسام المذكورة. وبدونها، في جداول عائلة `ReplicatedMergeTree`، وعند تفعيل إعداد [optimize\_mutations\_with\_partition\_pruning](/ar/reference/settings/session-settings/optimize) (وهو الوضع الافتراضي)، يكتشف ClickHouse تلقائيًا شروط مفتاح التقسيم في `filter_expr` ولا يطبّق الـ mutation إلا على الأقسام المتأثرة. أما في جداول `MergeTree` غير المنسوخة، فاستخدم عبارة `IN PARTITION` صريحة لحصر الـ mutation في أقسام محددة.

يُحدَّد تزامن معالجة الاستعلام بواسطة إعداد [mutations\_sync](/ar/reference/settings/session-settings/mutations#mutations_sync). ويكون غير متزامن افتراضيًا.

**انظر أيضًا**

* [Mutations](/ar/reference/statements/alter/index#mutations)
* [تزامن استعلامات ALTER](/ar/reference/statements/alter/index#synchronicity-of-alter-queries)
* إعداد [mutations\_sync](/ar/reference/settings/session-settings/mutations#mutations_sync)

## محتوى ذي صلة

* مدونة: [التعامل مع التحديثات وعمليات الحذف في ClickHouse](https://clickhouse.com/blog/handling-updates-and-deletes-in-clickhouse)
