با استفاده از تابع MAKEDATE در MySQL، برای جدول sales که ستونهای year و day_of_year دارد یک ستون new_date بسازید و تمام ردیفها را همراه با new_date نمایش دهید.
6.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:50 0.0
برای حل این مسئله از تابع MAKEDATE(year, day_of_year) در MySQL استفاده کنید؛ مثلاً SELECT *, MAKEDATE(year, day_of_year) AS new_date FROM sales؛ توجه کنید که year و day_of_year باید عددی باشند و day_of_year در بازهٔ 1 تا 365/366 قرار گیرد، در غیر این صورت میتوانید با شرط WHERE یا توابعی مثل GREATEST/LEAST مقادیر نامعتبر را مدیریت کنید. این تمرین مرتبط با کار با توابع تاریخ و عبارات و همچنین کوئرینویسی دادهها در MySQL است—در نسخههای رایج MySQL (مثلاً 5.7+) قابل اجراست و برای جلوگیری از خطاهای NULL یا مقادیر نامعتبر بهتر است ورودیها را اعتبارسنجی کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
استفاده از MAKEDATE در MySQL برای ساخت ستون new_date از سال و روز سالی، روشی ساده و کارا است. در SELECT میتوانید از MAKEDATE(year, day_of_year) AS new_date استفاده کنید. توجه کنید day_of_year باید عددی بین 1 تا 366 باشد؛ در غیر این صورت مقدار NULL برمیگردد. برای جلوگیری از مقادیر نامعتبر میتوانید با LEAST و GREATEST بازه را محدود یا با WHERE فیلتر کنید، مثلاً MAKEDATE(year, LEAST(GREATEST(day_of_year,1),366)). این روش در MySQL 5.7+ پشتیبانی میشود و حتماً ورودیها را قبل از استفاده اعتبارسنجی کنید.
گزارش