PDA

View Full Version : مشکل در sql



tecnocomputer2
سه شنبه 11 خرداد 1389, 23:24 عصر
با سلام من یه جدول دارم دوتا فیلد داره:

فلید نام
فیلد شماره

تو فیلد نام اسم طرف میوفته تو شماره هم یه شماره از 1 تا 1000 به صورت رندوم قرار میگیره. این اطلاعات رو تو جدولم دارم:
نام شماره
علی 11
رضا 129
حمید 12
فرهاد 13
نیما 16

حالا وقتی ORDER BY shomare میزنم درست اطلاعات نمیده! اینجور میده:
نام شماره
علی 11
حمید 12
رضا 129
فرهاد 13
نیما 14

ولی میخام از بزرگ به کوچیک باشه مثلا 129 بیاد اخر!

mirmousavi.m
سه شنبه 11 خرداد 1389, 23:56 عصر
جنس فیلد شماره چیه؟

trade_mark
چهارشنبه 12 خرداد 1389, 01:22 صبح
دوست عزیز فیلد شماره شما از نوع رشته هست.
برای اینکه این کار رو بتونی به درستی انجام بدین باید به مقدار عددی تبدیلش کنین
2 راه داری
اولی اینه که بری تو حال طراحی بانکت این کارو انجام بدی
دومی اینه که در موقع کوئری زدن این کارو انجام بدی
به نظرم اگه امکانش هست از راه اول استفاده کن

tecnocomputer2
چهارشنبه 12 خرداد 1389, 08:48 صبح
بله فیلد من از نوع رشته هست
و نمیتونم تغیرش بده (به دلایلی) چون در همین فیلد رشته هم جا میگیره.
کاریش نمیشه کرد؟

trade_mark
چهارشنبه 12 خرداد 1389, 11:29 صبح
(به دلایلی) چون در همین فیلد رشته هم جا میگیره.
شما که گفتی :

یه جدول دارم دوتا فیلد داره:

فلید نام
فیلد شماره

تو فیلد نام اسم طرف میوفته تو شماره هم یه شماره از 1 تا 1000 به صورت رندوم قرار میگیره.

یعنی تو فیلد شماره به غیر از عدد چیزه دیگه ای هم هست؟!!!!!

tecnocomputer2
چهارشنبه 12 خرداد 1389, 12:13 عصر
اره دو جور اطلاعات وارد میشه

یا یه شماره از 1 تا 1000
یا یه تایم، مثلا: 01:12:32:454

trade_mark
چهارشنبه 12 خرداد 1389, 23:55 عصر
خوب بااین حساب شما بر چه اساسی می خوای اطلاعات صفحه رو مرتب کنی؟
این جوری شو دیگه ندیده بودم
شما فیلد رو برای شماره تعریف کردی بعد اومدی داخلش نصفو رندوم پر کردی نصف دیگه رو هم با تایم

tecnocomputer2
پنج شنبه 13 خرداد 1389, 14:27 عصر
تو بانک نتیجه بازی کاربرا رو ذخیره میکنم
بعضی از بازیها با تایم هستن (مثلا بازی ماشین) بعضی بازیها با شمارش هست (مثل بازی تنیس)

trade_mark
پنج شنبه 13 خرداد 1389, 14:46 عصر
خوب شما بگو می خوای چی کار کنی تا بنده یا دیگر دوستان کمک کنیم
اگه می خوای تمام مقادیر داخل فیلد شماره رو به عدد تبدیل کنی می تونی از کد زیر استفاده کنی


select CAST((replace(fild_id,"",":") as signed)as new_id from tablename order by new_id

فکر کنم یه چیز تو همین حالت ها باشه
قبلا تو انجمن مطرح شده سرچ کن