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

8.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:52

0.0

برای حل این سوال در MySQL از تابع DAYOFWEEK(date) استفاده کنید که عددی بین 1 تا 7 برمی‌گرداند (در MySQL مقدار 1 معادل یک‌شنبه و 7 معادل شنبه است). می‌توانید کوئری‌ای شبیه SELECT *, DAYOFWEEK(order_date) AS weekday_number FROM orders; بنویسید. برای نمایش نام روز به‌جای عدد می‌توان از DAYNAME(order_date) یا ترکیب ELT/DAYOFWEEK یا CASE استفاده کرد. توجه داشته باشید که مقادیر NULL در ستون تاریخ را مدیریت کنید و در صورت نیاز منطقه زمانی سرویس را در نظر بگیرید.

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

می‌توانید برای هر رکورد از جدول orders روز هفته را با DAYOFWEEK(order_date) محاسبه کنید. برای نمایش همراه با سایر ستون‌ها می‌توانید از SELECT *, DAYOFWEEK(order_date) AS weekday_number FROM orders استفاده کنید و از DAYNAME(order_date) برای نام روز بهره ببرید. اگر می‌خواهید هفته را از شنبه یا دوشنبه شروع کنید، از CASE یا ELT/DAYOFWEEK استفاده کنید، مثلاً CASE WHEN DAYOFWEEK(order_date)=1 THEN 7 ELSE DAYOFWEEK(order_date)-1 END. در نهایت برای مدیریت NULLها از شرط CASE برای order_date NULL یا استفاده از CONVERT_TZ و تنظیم زمان‌مرجع منطقه زمانی مناسب بهره ببرید.

گزارش

1 پاسخ

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

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