PDA

View Full Version : تبدیل رشته به عدد در هنگام select



asdfghjkl
یک شنبه 19 مهر 1383, 20:11 عصر
سلام
من یک جدول دارم که یکی از فیلدهای آن از نوع varcharمی باشد ولی من می‌خواهم که بصورت عددی به من برگرداند تا بتوانم عملیات ریاضی را روی آن انجام دهم . درضمن مقادیر واقعی این فیلد همه بصورت عددی می‌باشند شبیه مثال زیر مثال:
select Strtoint(a1)as from table1 where a1>100
آیا در اسکیوال تابعی شبیه strtoint هست که بتواند این کار را انجام دهد.

AminSobati
دوشنبه 20 مهر 1383, 11:43 صبح
دوست عزیزم،
از CAST میتونین برای تبدیلهای متنوعی استفاده کنین. این تابع بسیار قدرتمنده و توصیه میکنم در Books Online این بخش رو حتما ملاحظه بفرمایید:

Transact-SQL Reference>CAST and CONVERT
ضمنا دستور مورد نیاز شما:

SELECT CAST(MyField AS INT) FROM MyTable WHERE CAST(MyField AS INT)>100

موفق باشید،
امین ثباتی MCSD

asdfghjkl
دوشنبه 20 مهر 1383, 12:47 عصر
این روش جواب داد.
ممنون از راهنمایی شما.

AminSobati
دوشنبه 20 مهر 1383, 12:52 عصر
:)

maaaaaa
دوشنبه 06 اسفند 1386, 14:34 عصر
سلام

سوال این که:

اگر داده های جدول به صورت:

299.55
65.30
1
0
80.00

باشند،برای تبدیل این نوع داده های کاراکتری به int از چه دستوری باید استفاده کرد؟

Elham_gh
دوشنبه 06 اسفند 1386, 15:02 عصر
سلام

سوال این که:

اگر داده های جدول به صورت:

299.55
65.30
1
0
80.00

باشند،برای تبدیل این نوع داده های کاراکتری به int از چه دستوری باید استفاده کرد؟




CAST(REPLACE ( 'fieldname' , ',' , '' ) AS INT)

samprp
یک شنبه 25 فروردین 1387, 13:04 عصر
یه سوال من می خوام فقط در خروجی مثلا کلمه ی درست به جای کلمه ی True بیاد و در بقیه ی موارد خود کلمه ی True داخل DATABSE باشه . یعنی نمی خوام داخل دیتابیس عوض بشه و فقط در هنگام نمایش در DbGrid عوض بشه .
چه طوری؟

Hamid.Kad
یک شنبه 25 فروردین 1387, 13:12 عصر
دوست عزیز یه سوال را در یک تاپیک بپرسید. در تاپیک مربوطه جواب داده شده است
http://barnamenevis.org/forum/showthread.php?t=101561