رفتن به مطلب
  • 0

مرتب کردن یک لیست بر اساس الفبا


arastooms

سوال

طرح مشکل:
من از دیتابیس تعدادی رکورد رو میگیرم که شامل اسامی هستند مثل زیر

ali

hasan

mohsaen 

ali 

davod

sobhan

book

nazanin

kerman

 خوب اینا رو میدوم به لیست ویو که نمایش داده بشه ولی به ترتیبی که در دیتابیس هست نمایش داده میشه و من نیاز دارم به کاربر براساس حروف الفبا نمایش بدم که بتونه زود اسمش رو پیدا کنه!!!

حالا 
راه حلی که به نظرم رسید این بود که بیام اسامی رو که پیدا کردم در سلولها اول بدم به یک لیست بعد متب کنم و بعد بدم به لیست ویو

فرض میکنیم که لیستی در اختیار داریم با این ترتیب

ali

hasan

mohsaen 

ali 

davod

sobhan

book

nazanin

kerman

 

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

با تشکر

لینک ارسال
به اشتراک گذاری در سایت های دیگر

4 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

بسیار بسیار عالی و کاربردی 
واقعا محبت کردی محمد جان امید وارم همیشه شاد و موفق و سربلند باشی رفیق
این دستور که در زیر با راهنمایی عزیزان به دست اومده میاد و در دیتابیسی که نا مرتب هست رکورد ها رو میگیره و 40 تا 40 تا مرتب شده از الف به ی و از a به z براتون می گیره
 

CUR=SQL.ExecQuery("SELECT * FROM tbl1 where name LIKE '"&name&"%'  ORDER BY zaban Asc LIMIT 40 OFFSET 0")

موفق باشید 
و باز هم تشکر

لینک ارسال
به اشتراک گذاری در سایت های دیگر

@,

خب البته امتحان نکردم ولی با کوئری گرفتن از دیتابیس میشه اینکارو انجام داد

من برات نمونه کد میزارم از کوئری پیاده سازیش کن سر پروژت

SELECT * FROM dic ORDER BY en ASC, fa DESC

SELECT * FROM dic ORDER BY en ASC

SELECT * FROM dic ORDER BY fa DESC

DESC = نزولی مرتب سازی میکنه

ASC = اینم سعودی

لینک ارسال
به اشتراک گذاری در سایت های دیگر

@,

خب البته امتحان نکردم ولی با کوئری گرفتن از دیتابیس میشه اینکارو انجام داد

من برات نمونه کد میزارم از کوئری پیاده سازیش کن سر پروژت

SELECT * FROM dic ORDER BY en ASC, fa DESC

SELECT * FROM dic ORDER BY en ASC

SELECT * FROM dic ORDER BY fa DESC

DESC = نزولی مرتب سازی میکنه

ASC = اینم سعودی

محمد جان اگر اینطوری بشه که عالی میشه

ولی از کد ها سر در نیاوردم و متوجه نشدم 

این دقیقا کویری من هست

 

CUR=SQL.ExecQuery("SELECT * FROM tbl1 where name LIKE '"&name&"%'LIMIT 40 OFFSET 0")

الان چه طور باید تغیرش بدم؟؟؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

خب من در کوئری که لیمیت داده شده سفارشی دیتابیس رو سرت نکردم

ولی دو تا کوئری میزارم جفتشو در هر بار کامپایل امتحان کن

بنظرم جفتش پاسخگوی سوالت باشه دقیق اطلاع ندارم واینکه اگر سعودی و نزولی بودن رو خواستی عوض کنی کافیه از DESC و ASC استفاده کنی :give_rose:

وقتی نوشتم ORDER BY fa DESC تو این خط fa اسم ستونی که قراره مرتب بشه که فکر کنم خط اول کوئری درست باشه

			CUR=SQL.ExecQuery("SELECT * FROM tbl1 where name LIKE '"&name&"%'LIMIT 40 OFFSET 0 ORDER BY name DESC")
			CUR=SQL.ExecQuery("SELECT * FROM tbl1 ORDER BY DESC where name LIKE '"&name&"%'LIMIT 40 OFFSET 0 ")
CUR=SQL.ExecQuery("SELECT * FROM tbl1 ORDER BY where name LIKE '"&name&"%'LIMIT 40 OFFSET 0 DESC")
لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...