PDA

View Full Version : TOP COUNT?



Ehsan Valinouri
سه شنبه 06 شهریور 1386, 14:20 عصر
سلام دوستان

من می خوام داخل یک دیتا لیست 5 رکورد خاص که بر اساس فیلد های جدول انتخاب میشن رو انتخاب کنم. مثلا میخوام 5 خبر پر بیننده و یا 5 مقاله آخری که به جدول مربوطه اضافه شده را سلکت کنم.البته مشکل خودم حدس میزنم میشه با استفاده از TOP COUNT

این کار رو انجام داد.شایدم با ویو و استورد پروسیجر . از شما می خوام کمکم کنین.

کورش پدرام
سه شنبه 06 شهریور 1386, 15:00 عصر
سلام
همان گونه که خودت گفتی باید از Top n استفاده کنی. فقط باید بدانی این دستور بر اساس بخش Order by اطّلاعات نخستین n سطر را به تو بر می گرداند.

Ehsan Valinouri
سه شنبه 06 شهریور 1386, 15:44 عصر
ممنون از جوابت.آره من از Top n استفاده میکنم اما ظاهرا Syntax اش رو اشتباه می زنم از Books Online هم چیزی دستگیرم نشد. میشه یه نمونه Query اش رو اینجا بزاری برام؟

کورش پدرام
سه شنبه 06 شهریور 1386, 18:02 عصر
فراموش نکن عبارت Group By باید دارای همه ی ستون ها یت باشد بجز ستونی که می خواهی بر اساس آن گزارش چکیده بگیری.‌‍(Count..)




--Tables:
/*
Sale { ProductId, CustomerId }
Product { Name, Model }
*/

--Returns the top 10 models of products.
Select Top 10 Name, Model
from Product
order by Model

--Returns the top 5 products that have been saled.
SELECT Top 5 Product.Name, Product.Model, COUNT(Sale.ProductId) AS Number
FROM Sale INNER JOIN
Product ON Sale.ProductId = Product.Id
GROUP BY Name, Model
Order by Count(ProductId) desc