انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => برنامه‌سازی => نویسنده: rahmani در 31 اردیبهشت 1398، 09:10 ق‌ظ

عنوان: مرتب سازی نوع varchar در پایگاه داده mysql که مقادیرش عدد باشند بر چه اساسی است؟
ارسال شده توسط: rahmani در 31 اردیبهشت 1398، 09:10 ق‌ظ
با سلام

اگر یک ویژگی که مقدارش فقط عددصحیح هست در varchar ذخیره شده باشد با چه اساس و معیاری مرتب می شود؟
سپاسگزارم
عنوان: پاسخ : مرتب سازی نوع varchar در پایگاه داده mysql که مقادیرش عدد باشند بر چه اساسی است؟
ارسال شده توسط: amircb در 31 خرداد 1398، 05:54 ب‌ظ
اولین کارکتر عدد با اولین کاراکتر بقیه اعداد مقایسه میشه اگه به نتیجه رسید که هیچ ولی اگه به نتیجه نرسید میره به دومین کاراکتر یعنی اگه این اعداد داشته باشیم
(003,03,,1,10,3,6,11,23,2)اگه صعودی مرتب سازیش کنی اینجوری میشه
(https://trueans.com/fa/wp-content/uploads/sites/2/2019/06/Screenshot-from-2019-06-21-17-43-55.png)
و اگه نزولی مرتب کنی اینجوری میشه
(https://trueans.com/fa/wp-content/uploads/sites/2/2019/06/Screenshot-from-2019-06-21-17-44-20.png)
من تست مذکور را تو این(mysql  Ver 15.1 Distrib 10.3.12-MariaDB, for Linux (x86_64) using readline 5.1
) پایگاه داده زدم اما بعید میدونم تو بقیه متفاوت باشه

ذخیره سازی اعداد در فیلدهای رشته‌ای مرتب سازی را به مراتب کندتر و مصرف حافظه را افزایش میده.
بهتره هدف ذخیره سازی تو فیلد varchar بررسی بشه و راه حلهای بهتری ارائه بشه.