PDA

View Full Version : سورت اعداد در فیلد varchar



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

چه باید کرد؟

oxygenws
شنبه 15 بهمن 1384, 10:56 صبح
به جای "1" از مثلا "0001" استفاده کن (قطعا تعداد جلد ها از ده هزار تا بیشتر نمی شه!!)

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

oxygenws
یک شنبه 16 بهمن 1384, 10:23 صبح
کسی که داره ورود اطلاعات میکنه، برنامه نویس که نیست! اون فقط شماره ی جلد رو وارد میکنه.
من نگفتم اونی که داره داده ها رو وارد می کنه همچین کاری بکنه و مشکل اینجایت که **شما برنامه نویس هستید**
بد نیست توابعی مثل sprintf رو ببینی.


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

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

موفق باشید.

tabib_m
دوشنبه 17 بهمن 1384, 05:36 صبح
خیلی ممنون