با استفاده از دستور DELETE، تمام ردیف‌های جدول Orders را حذف کنید که وضعیت آنها برابر 'لغو' و تاریخ سفارش آنها قبل از '2023-01-01' است.

16.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 03:00

0.0

برای حل این مسئله از فرمان DELETE استفاده کنید و شرط‌ها را در جمله WHERE قرار دهید تا فقط ردیف‌های مورد نظر حذف شوند؛ مثلاً: DELETE FROM Orders WHERE status = 'لغو' AND order_date

توسط پژوهشگر در 198 روز قبل ساعت 03:00
دسته بندی ها: SQL SQL for beginner
nima در 198 روز قبل ساعت 03:01

قبل از اجرای DELETE، همان شرط‌ها را با یک SELECT اجرا کنید تا تعداد ردیف‌ها و نمونه‌ای از داده‌ها را بررسی کنید. در محیط تولید از تراکنش (BEGIN/COMMIT) یا ابتدا پشتیبان‌گیری استفاده کنید و برای حذف‌های حجیم از حذف دسته‌ای (batch) با LIMIT یا ابزارهای ETL بهره ببرید. همچنین توجه داشته باشید که کلیدهای خارجی، تریگرها یا ایندکس‌ها می‌توانند رفتار و عملکرد را تغییر دهند و در صورت نیاز از soft delete (علامت‌گذاری به جای حذف فیزیکی) استفاده کنید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری