PDA

View Full Version : سوال: نمايش ركورد هاي تكرار شده در جدول به ترتيب صعودي



ali_ahr7
چهارشنبه 28 بهمن 1388, 13:28 عصر
سلام به همه دوستان برنامه نويس.
من يه سوال دارم و اونو با مثال مطرح ميكنم: اسامي زير رو در نظر بگيريد؟
علي
حسن
حسين
علي
حسين
حسين
اميد
سوال اينه:
چطور ميشه اسامي بالا رو به ترتيب تكرار شدن sort نمود طوري كه كنار اسامي تعداد تكرارشون هم نمايش داده بشه.يعني خروجي بصورت زير باشه:
حسين 3
علي 2
حسن 1
اميد 1
متشكرم از توجهتون

Modernidea
چهارشنبه 28 بهمن 1388, 14:57 عصر
سلام



select fname, Count(*) as tekrar from TableName Group By fname order by tekrar DESC

fname: فیلد اسامی.

tekrar: نام مستعار برای تعداد تکرار هر اسم.

موفق باشید.

ali_ahr7
چهارشنبه 28 بهمن 1388, 17:04 عصر
دوست عزيز خيلي متشكرم از جوابتون.ميشه طرز كار كلي كد رو هم بگيد؟

محمد سلیم آبادی
چهارشنبه 28 بهمن 1388, 18:53 عصر
دوست عزيز خيلي متشكرم از جوابتون.ميشه طرز كار كلي كد رو هم بگيد؟
توضیح کد:
ابتدا تمام سطر های جدول مذکور خوانده می شود. FROM Table
سپس سطر ها بر اساس ستون نام گروه بندی می شوند. GROUP BY Name
با کمک تابع COUNT تعداد سطر های داخل هر گروه محاسبه می شود. SELECT COUNT(*)
سپس نتیجه ی حاصل بر اساس تعداد سطر هر گروه به صورت صعودی مرتب می شود. ORDER BY COUNT(*) -