با استفاده از تابع CURDATE، تعداد سفارش‌هایی که در جدول orders و ستون order_date در تاریخ امروز ثبت شده‌اند را بیابید.

19.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 04:24

0.0

برای حل این مسئله از MySQL و تابع تاریخ CURDATE() استفاده کنید؛ معمولاً عبارت SELECT COUNT(*) FROM orders WHERE DATE(order_date) = CURDATE(); کافی است. اگر ستون order_date از نوع DATE باشد می‌توانید مستقیم WHERE order_date = CURDATE() را به کار ببرید و اگر DATETIME است از تابع DATE() برای استخراج بخش تاریخ استفاده کنید؛ همچنین به منطقه زمانی (time zone) سرور توجه کنید تا تاریخ امروز مطابق انتظار شما باشد.

توسط پژوهشگر در 198 روز قبل ساعت 04:24
دسته بندی ها: MySQL MySQL for beginner
sara در 198 روز قبل ساعت 04:25

برای شمارش سفارش‌های امروز معمولاً SELECT COUNT(*) FROM orders WHERE DATE(order_date) = CURDATE() کافی است، اما اگر ستون order_date از نوع DATETIME باشد باید یا DATE() را اعمال کنید یا بهتر است از بازه زمانی استفاده کنید تا ایندکس‌ها حفظ شوند. به‌عنوان مثال WHERE order_date >= CURDATE() AND order_date < CURDATE() + INTERVAL 1 DAY کارآمدتر و سریع‌تر است. همچنین مطمئن شوید که منطقه زمانی سرور یا داده‌های ذخیره‌شده (مثلاً UTC) با انتظار شما هم‌راستا باشد تا "امروز" به درستی محاسبه شود. در جداول بزرگ بررسی عملکرد و وجود ایندکس مناسب روی order_date را فراموش نکنید.

گزارش

1 پاسخ

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

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