حذف من
ينطبق على: Databricks SQL Databricks Runtime
حذف الصفوف التي تطابق دالة تقييم. عند عدم توفير دالة تقييم، يحذف كافة الصفوف.
هذه العبارة معتمدة فقط لجداول Delta Lake.
بناء الجملة
DELETE FROM table_name [table_alias] [WHERE predicate]
المعلمات
-
تعريف جدول موجود. يجب ألا يتضمن الاسم مواصفات زمنية.
table_name
يجب ألا تكون طاولة خارجية. -
تعريف اسم مستعار للجدول. يجب ألا يتضمن الاسم المستعار قائمة أعمدة.
-
تصفية الصفوف حسب دالة التقييم.
WHERE
تدعم دالة التقييم الاستعلامات الفرعية، بما في ذلكEXISTS
IN
NOT IN
NOT EXISTS
الاستعلامات الفرعية العددية و. الأنواع التالية من الاستعلامات الفرعية غير معتمدة:- الاستعلامات الفرعية المتداخلة، أي استعلام فرعي داخل استعلام فرعي آخر
NOT IN
الاستعلام الفرعي داخلOR
، على سبيل المثال،a = 3 OR b NOT IN (SELECT c from t)
في معظم الحالات، يمكنك إعادة كتابة
NOT IN
الاستعلامات الفرعية باستخدامNOT EXISTS
. نوصي باستخدامNOT EXISTS
كلما أمكن، كما هو الحالDELETE
معNOT IN
الاستعلامات الفرعية يمكن أن يكون بطيئا.
الأمثلة
> DELETE FROM events WHERE date < '2017-01-01'
> DELETE FROM all_events
WHERE session_time < (SELECT min(session_time) FROM good_events)
> DELETE FROM orders AS t1
WHERE EXISTS (SELECT oid FROM returned_orders WHERE t1.oid = oid)
> DELETE FROM events
WHERE category NOT IN (SELECT category FROM events2 WHERE date > '2001-01-01')