PDA

View Full Version : نوشتن یک تابع تبدیل تاریخ روی یک فیلد در sql2000



sheida
دوشنبه 21 آبان 1386, 18:25 عصر
با سلام دوستان من یک برنامه دارم که تاریخ را به صورت 1386/01/01در فیلد تاریخ وارد می کنه من نمی خوام از طریق برنامه نویسی تاریخ را به فرمت 01/01/1386تبدیل کند می خوام از طریق تعریف یک تابع که کار تبدیل را روی فیلد تاریخ انجام دهد صورت بگیرد لطفا مرا راهنمایی کنید
با تشکر

پرواز
دوشنبه 21 آبان 1386, 19:05 عصر
میتونی از تابع SUBSTRING استفاده کنی.

یه sp بنویس که روی همه رکوردهای جدولت اعمال بشه. با استفاده از تابع فوق عناصر روز و ماه و سال رو استخراج کن و دوباره به فرمت دلخواه خودت سرهمشون کن.

sheida
دوشنبه 21 آبان 1386, 22:40 عصر
میشه sp ان رو برام بنویسید آخه من تازه کارم ممنون میشم زودتر جوابمو بگیرم
با تشکر

پرواز
سه شنبه 22 آبان 1386, 11:34 صبح
UPDATE T
SET DateField = SUBSTRING(T.DateField, 7, 4) + '/' +
SUBSTRING(T.DateField, 4, 2) + '/' +
SUBSTRING(T.DateField, 1, 2) FROM dbo.MyTable T

به جای کلمه DateField نام فیلد تاریخ خودتون و به جای کلمه MyTable نام جدول مربوطه رو بذارید.
نکته: فقط زمانی درست نتیجه میده که فیلد تاریخ شما بصورت ده کاراکتری (----/--/--) وارد شده باشه. در غیر اینصورت نتایج اشتباه تولید می کنه.