انتخاب n ریف در GROUPING
سلام استاد .
من سرچ کردم جوابای خیلی خوبی پیدا نکردم . و جوابا مشابه بود نه همین ....
وقتی ی سری رکورد رو با group by طبقه بندی میکنید ، چطور فرضا 3 تا رکورد بالا از هر کدوم این گروه ها رو برمیگردونین؟
مثلا جدول سفارش دارم . هر مشتری توی هر سالی تعداد زیادی سفارش ثبت میکنه .
میخوایم برای هر مشتری 3 سالی رو به همراه مجموع خرید هرسالش رو نمایش بدیم که بیشترین سفارش ثبت شده رو داشته .
بجای 3سال اگر n سال با بیشترین سفارش رو بخوایم چطور؟
مثلا:
total year customerid
1 2012 10000
1 2014 7000
1 2020 3000
2 2018 500000
2 2020 23000
2 2010 4500
3 2008 600000
3 2022 45000
3 2017 7300
1 پاسخ
سلام به شما دوست عزیز.
در sql server میتونید از دستور top استفاده کنید مثلا برای انتخاب ۳ ردیف اولی از دستور زیر استفاده کنید.
select top 3 * from tableName