0
برای تبدیل ماههای میلادی به شمسی
با سلام و خسته نباشید خدمت شما
من یک کوئری نوشتم که در زیر هست برای تبدیل ماههای میلادی به شمسی خواستم بدونم که آیا بهینه هست یا نه یا اگر کد بهتری وجود دارد آیا می توانید معرفی کنید یا لینک آنرا بدهید.
Code
select *,CASE WHEN (day(orderdate) >='21' and month(orderdate) = '03') or (day(orderdate) <='20' and month(orderdate) = '04') THEN 'فروردین' WHEN (day(orderdate) >='21' and month(orderdate) = '04') or (day(orderdate) <='21' and month(orderdate) = '05') THEN 'اردیبهشت' WHEN (day(orderdate) >='22' and month(orderdate) = '05') or (day(orderdate) <='21' and month(orderdate) = '06') THEN 'خرداد' WHEN (day(orderdate) >='22' and month(orderdate) = '06') or (day(orderdate) <='22' and month(orderdate) = '07') THEN 'تیر' WHEN (day(orderdate) >='23' and month(orderdate) = '07') or (day(orderdate) <='22' and month(orderdate) = '08') THEN 'مرداد' WHEN (day(orderdate) >='23' and month(orderdate) = '08') or (day(orderdate) <='22' and month(orderdate) = '09') THEN 'شهریور' WHEN (day(orderdate) >='23' and month(orderdate) = '09') or (day(orderdate) <='22' and month(orderdate) = '10') THEN 'مهر' WHEN (day(orderdate) >='23' and month(orderdate) = '10') or (day(orderdate) <='21' and month(orderdate) = '11') THEN 'آبان' WHEN (day(orderdate) >='22' and month(orderdate) = '11') or (day(orderdate) <='21' and month(orderdate) = '12') THEN 'آذر' WHEN (day(orderdate) >='22' and month(orderdate) = '12') or (day(orderdate) <='20' and month(orderdate) = '01') THEN 'دی' WHEN (day(orderdate) >='21' and month(orderdate) = '01') or (day(orderdate) <='19' and month(orderdate) = '02') THEN 'بهمن' WHEN (day(orderdate) >='20' and month(orderdate) = '02') or (day(orderdate) <='20' and month(orderdate) = '03') THEN 'اسفند' END from date1
ممنون می شوم من را راهنمایی کنید
با تشکر از شما
2 پاسخ
1
با سلام و خسته نباشید خدمت شما
جناب آقای Alighalehban از لینکی که معرفی کردید بسیار ممنونم خیلی ایده ازش گرفتم خیلی لطف کردید بسیار ممنونم
با تشکر از شما
2