امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
نویسنده پیام
iran58 آفلاین
كاربر دو ستاره
**

ارسال‌ها: 153
موضوع‌ها: 115
تاریخ عضویت: خرداد ۱۳۸۸

تشکرها : 25
( 14 تشکر در 9 ارسال )
ارسال: #1
تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
نمیشه تاریخ میلادی رو بوسیله query توی sql تبدیل به تاریخ شمسی کرد ودر فیلد دیگری قرار داد
۲۲-مرداد-۱۳۸۸, ۱۳:۳۷:۵۳
ارسال‌ها
پاسخ
lord_viper غایب
مدیر کل انجمن
*****

ارسال‌ها: 3,949
موضوع‌ها: 352
تاریخ عضویت: بهمن ۱۳۸۴

تشکرها : 5193
( 9875 تشکر در 2650 ارسال )
ارسال: #2
RE: تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
میشه
ولی برای استفاده از تاریخ شمسی تو sql راههای راحتری هم هست
۲۲-مرداد-۱۳۸۸, ۱۸:۳۸:۰۱
وب سایت ارسال‌ها
پاسخ
iran58 آفلاین
كاربر دو ستاره
**

ارسال‌ها: 153
موضوع‌ها: 115
تاریخ عضویت: خرداد ۱۳۸۸

تشکرها : 25
( 14 تشکر در 9 ارسال )
ارسال: #3
RE: تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
(۲۲-مرداد-۱۳۸۸, ۱۸:۳۸:۰۱)lord_viper نوشته است: میشه
ولی برای استفاده از تاریخ شمسی تو sql راههای راحتری هم هست
سلام اين راه هارابيان مي كنيد
۲۳-مرداد-۱۳۸۸, ۰۸:۳۴:۱۶
ارسال‌ها
پاسخ
lord_viper غایب
مدیر کل انجمن
*****

ارسال‌ها: 3,949
موضوع‌ها: 352
تاریخ عضویت: بهمن ۱۳۸۴

تشکرها : 5193
( 9875 تشکر در 2650 ارسال )
ارسال: #4
RE: تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
یکیش که من خودم برای استفاده از تاریخ شمسی تو sql استفاده میکنم اینه
نوع فیلد رو int میگیرم و تاریخ رو بدون separator یا همون // وارد میکنم مثلا1387/05/12 رو به صورت 13870512 وارد میکنم بعد موقع زدن select با یه تابع کوچیک این // ها رو جایگزین میکنم
دردسرش کمتره سرعتش هم بالاتره
۲۳-مرداد-۱۳۸۸, ۱۳:۱۰:۱۹
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : ajlajlajl, iran58
far_222000 آفلاین
مدير بخش ديتابيس
*****

ارسال‌ها: 955
موضوع‌ها: 68
تاریخ عضویت: شهریور ۱۳۸۴

تشکرها : 468
( 1249 تشکر در 422 ارسال )
ارسال: #5
RE: تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
(۲۳-مرداد-۱۳۸۸, ۱۳:۱۰:۱۹)lord_viper نوشته است: یکیش که من خودم برای استفاده از تاریخ شمسی تو sql استفاده میکنم اینه
نوع فیلد رو int میگیرم و تاریخ رو بدون separator یا همون // وارد میکنم مثلا1387/05/12 رو به صورت 13870512 وارد میکنم بعد موقع زدن select با یه تابع کوچیک این // ها رو جایگزین میکنم
دردسرش کمتره سرعتش هم بالاتره

این روش رو من هم استفاده می کنم
این روش باعث می شه از شر توابعی که کارشون مقایسه تاریخ هاست هم خلاص بشی
مثلاً اگه بخوای رکورد هایی رو ببینی که تاریخشون بین 1388/05/01 تا 1388/06/01 هست باید با این جور توابع کار کنی ولی توی این حالت شما می نویسی Date>13880501 & Date<13880601
فقط باید به این نکته توجه کنی که به اعداد 1 رقمی یه صفر هم اضافه کنی!!! پس با این حساب این تاریخ غلطه: 1388/5/1

پارک24
مرجع خرید و فروش خودرو
۲۴-مرداد-۱۳۸۸, ۰۹:۳۱:۳۹
وب سایت ارسال‌ها
پاسخ
HoseinVig آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,165
موضوع‌ها: 97
تاریخ عضویت: مرداد ۱۳۸۵

تشکرها : 4768
( 2464 تشکر در 677 ارسال )
ارسال: #6
RE: تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
(۲۳-مرداد-۱۳۸۸, ۱۳:۱۰:۱۹)lord_viper نوشته است: یکیش که من خودم برای استفاده از تاریخ شمسی تو sql استفاده میکنم اینه
نوع فیلد رو int میگیرم و تاریخ رو بدون separator یا همون // وارد میکنم مثلا1387/05/12 رو به صورت 13870512 وارد میکنم بعد موقع زدن select با یه تابع کوچیک این // ها رو جایگزین میکنم
دردسرش کمتره سرعتش هم بالاتره

میشه این روشو کاملتر توضیح بدین؟
اون تابع تابع اس کیو ال منظورته؟

۱۴-شهریور-۱۳۸۸, ۱۷:۲۴:۳۸
ارسال‌ها
پاسخ
lord_viper غایب
مدیر کل انجمن
*****

ارسال‌ها: 3,949
موضوع‌ها: 352
تاریخ عضویت: بهمن ۱۳۸۴

تشکرها : 5193
( 9875 تشکر در 2650 ارسال )
ارسال: #7
RE: تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
سلام حسین جان روش کار رو که بالا توضیح دادم
این هم تابعی که برای این کار نوشتم و / / ها رو قرار میده

کد:
CREATE FUNCTION separate_date(@intdate int)

RETURNS char(10)
AS
BEGIN
declare @sam char(8)
declare @dat char(10)
set @sam=convert(char(10),@intdate);
set @dat=substring(@sam,1,4)+'/'+substring(@sam,5,2)+'/'+substring(@sam,7,2)
return @dat
END
GO

فکر نمیکنم توضیح بیشتری بخواهد
۱۵-شهریور-۱۳۸۸, ۰۰:۵۱:۰۰
وب سایت ارسال‌ها
پاسخ
HoseinVig آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,165
موضوع‌ها: 97
تاریخ عضویت: مرداد ۱۳۸۵

تشکرها : 4768
( 2464 تشکر در 677 ارسال )
ارسال: #8
RE: تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
آها فهمیدم
فقط
نقل قول: موقع زدن select با یه تابع کوچیک این // ها رو جایگزین میکنم
اینم یه توضیح میدی؟
شرمندها

۱۵-شهریور-۱۳۸۸, ۰۲:۰۲:۱۴
ارسال‌ها
پاسخ
lord_viper غایب
مدیر کل انجمن
*****

ارسال‌ها: 3,949
موضوع‌ها: 352
تاریخ عضویت: بهمن ۱۳۸۴

تشکرها : 5193
( 9875 تشکر در 2650 ارسال )
ارسال: #9
RE: تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
سلام حسین جان
اون تابعی که بالا گزاشتم رو تو قسمت
programmability /functions/scalar_valued function/new scalar_valued function
اجراش میکنی بعد از تابع تو select هات به این صورت استفاده میکنی

مثلا اگه اسم فیلد تاریخت باشه shamsi به این صورت کار میکنی

کد:
select dbo.separate_date(shamsi)as shamsi from tablename
چون این تابع جزء توابع پیش فرض نیست و خودتون نوشتین باید قبلش hinstanceش رو ذکر کنین که همون dbo هست
۱۵-شهریور-۱۳۸۸, ۱۰:۱۱:۴۵
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : HoseinVig
HoseinVig آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,165
موضوع‌ها: 97
تاریخ عضویت: مرداد ۱۳۸۵

تشکرها : 4768
( 2464 تشکر در 677 ارسال )
ارسال: #10
RE: تاریخ میلادی رو چطوری به شمسی تبدیل کنم بوسیله sql
مبین جان یک دنیا ممنون

۱۵-شهریور-۱۳۸۸, ۱۶:۳۲:۲۵
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [سوال] اختلاف دوتاریخ تاریخ Ghoghnus 0 1,520 ۲۱-فروردین-۱۳۹۳, ۱۹:۵۱:۴۳
آخرین ارسال: Ghoghnus
  تبدیل اطلاعات بانک datبه sql taksa2012 3 3,326 ۲۴-آبان-۱۳۹۲, ۱۱:۲۹:۳۲
آخرین ارسال: lord_viper
  توابع تاریخ شمسی جهت استفاده در Mysq lord_viper 1 3,273 ۰۶-مهر-۱۳۸۸, ۱۲:۵۶:۴۱
آخرین ارسال: ajlajlajl
  چطوری این sp رو بنویسم؟ j.farazani 4 3,417 ۲۴-شهریور-۱۳۸۶, ۲۳:۱۳:۵۳
آخرین ارسال: j.farazani

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS