# پایگاه‌های داده > سایر پایگاه‌های داده > MySQL >  سورت اعداد در فیلد varchar

## tabib_m

با سلام
چجوری میشه توی یک فیلد varchar اعداد درست سرت شن؟
فرض کنید که من میخوام اطلاعات یک سری کتاب رو وارد کنم
مثلا میخوام کتابی رو وارد کنم که 10 جلد داره
و هر کدوم از جلدهای کتاب باید به صورت جداگانه در دیتابیس ذخیره بشن
توی رکورد هر جلد ، باید ثبت شه که این کتاب جلد چندمه
بعضی از کتاب ها مثلا جلد 7 و 8 رو با هم توی یک جلد چاپ میکنن
برای همین مجبوریم که توی تیبل مقدار (7و8) رو ثبت کنیم
برای همین باید نوع فیلدمون varchar باشه
حالا من میخوام جلد های یک کتاب رو نمایش بدم به ترتیب شماره ی جلد
در صورتی که ترتیب سورتی که مای اس کیو ال به من میده اینه
1
10
11
12
13
14
.
.
.
19
2
20
21
.
.
.

چه باید کرد؟

----------


## oxygenws

به جای "1" از مثلا "0001" استفاده کن (قطعا تعداد جلد ها از ده هزار تا بیشتر نمی شه!!)

----------


## tabib_m

خیلی ممنون
ولی من نمیخوام یه همچین کاری بکنم.
کسی که داره ورود اطلاعات میکنه، برنامه نویس که نیست! اون فقط شماره ی جلد رو وارد میکنه.
اصلا حتی اگر به طور اتوماتیک هم این کار رو بکنم، نمایش زشت میشه. مگر این که بازم کد بنویسم که توی نمایش صفر های اول رو حذف کنه
این راه جواب میده، ولی راه بهتری سراغ ندارید؟

----------


## oxygenws

> کسی که داره ورود اطلاعات میکنه، برنامه نویس که نیست! اون فقط شماره ی جلد رو وارد میکنه.


من نگفتم اونی که داره داده ها رو وارد می کنه همچین کاری بکنه و مشکل اینجایت که **شما برنامه نویس هستید**
بد نیست توابعی مثل sprintf رو ببینی.




> نمایش زشت میشه.


کی نمایش رو درست می کنه؟؟ برنامه نویس؟؟؟؟؟؟
می تونه زشت نشه، البته اگه برنامه نویس بخواد!!! (همونطوری که خودت گفتی)

خیر، راهی نیست، سورت کردن رشته ها، بر اساس کاراکتر هاست و mysql نوع داده "آرایه" نداره.

موفق باشید.

----------


## tabib_m

خیلی ممنون

----------

