حذف من
ينطبق على: التحقق من 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')