ورود

View Full Version : تبدیل رشته به عدد در sql 2000



serojjamali
پنج شنبه 04 مهر 1392, 10:39 صبح
با سلام
من یه دیتابیس sql دارم که یکی از ستونهاش شماره پرونده است

نام خانوادگی نام شماره پرونده
محمدي عباسعلي 100/010
مهديزادگان سيد حميد 99/550
سخنور محمود 200/060

به نظر دوستان به چه شکلی میتونم شماره پرونده رو به عدد تبدیل کنم

بدون استفاده از sp

:ناراحت:

mehdi.mousavi
پنج شنبه 04 مهر 1392, 10:42 صبح
سلام.
انتظار دارید 200/060 به چه عددی تبدیل بشه؟ و آیا این کد، ممکنه با صفر شروع بشه؟ ضمنا، منظورتون از بدون SP چیه؟

موفق باشید.

serojjamali
پنج شنبه 04 مهر 1392, 11:09 صبح
با سلام
mehdi.mousavi mehdi.mousavi ممنون که جواب دادین

برای مثال 200/060 به 200.060 تبدیل بشه تا بتونم اطلاعات رو مرتب کنم

نمی خوام از Stored Procedure استفاده کنم

میخوام دستوری باشه که مستقیم توی دستور select ازش استفاده کنم مثل دستور CAST

mehdi.mousavi
پنج شنبه 04 مهر 1392, 12:46 عصر
با سلام mehdi.mousavi mehdi.mousavi ممنون که جواب دادین برای مثال 200/060 به 200.060 تبدیل بشه تا بتونم اطلاعات رو مرتب کنم نمی خوام از Stored Procedure استفاده کنم میخوام دستوری باشه که مستقیم توی دستور select ازش استفاده کنم مثل دستور CAST

سلام.
بسیار خوب، اگر فرض کنیم که اسم جدول @Temp باشه و رشته های مورد نظر همگی عددی باشند، اونوقت میتونید ابتدا با REPLACE
/ رو به . تغییر بدید، سپس با Convert رشته جدید رو به DECIMAL(19, 5) (فرضا) تبدیل کنید:

SELECT CONVERT(DECIMAL(19, 5), REPLACE(Col1, '/', '.')) FROM @Temp

موفق باشید.

hramezani
پنج شنبه 04 مهر 1392, 12:46 عصر
سلام
select CONVERT(float, REPLACE(parvandeNo,'/','.')) from TBL
یا
select CONVERT(decimal(10,4), REPLACE(parvandeNo,'/','.')) from TBL

که اسم ستون شماره پرونده رو من از خودم نوشتم , شما باید اسم ستون خودتون رو بنوسین و اینکه فرمت خروجی هر جوری که میخواین باشه میتونین از float یا decimal بسته به شرایط خودتون استفاده کنین