با استفاده از تابع DATE_SUB در MySQL، تمام رکوردهای جدول orders را که تاریخ سفارش‌شان بیش از 30 روز از تاریخ جاری گذشته است استخراج کنید.

3.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:30

0.0

برای حل این مسئله می‌توانید از نمونه پرس‌وجوی زیر استفاده کنید: SELECT * FROM orders WHERE order_date

توسط پژوهشگر در 202 روز قبل ساعت 02:30
دسته بندی ها: MySQL MySQL for beginner
reyhaneh در 202 روز قبل ساعت 09:25

برای استخراج رکوردهای سفارش‌هایی که بیش از 30 روز از تاریخ امروز گذشته‌اند، می‌توانید از WHERE order_date < DATE_SUB(NOW(), INTERVAL 30 DAY) استفاده کنید. اگر ستون order_date از نوع DATE است، از CURDATE() به جای NOW() استفاده کنید تا مقایسه فقط با تاریخ انجام شود. عملکرد را بهبود دهید با قرار دادن تابع روی مقدار ثابت (DATE_SUB(NOW(), INTERVAL 30 DAY)) و نه روی ستون، تا از ایندکس روی order_date بهره ببرید. مطمئن شوید که order_date ایندکس دارد تا جستجو سریع‌تر باشد.

گزارش

1 پاسخ

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

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