PDA

View Full Version : کوئری برای نمایش 10 رکورد اول، 10 رکورد دوم و 10 رکورد سوم



Naghibi
سه شنبه 19 آذر 1392, 10:50 صبح
با سلام

من می خوام توی برنامه 10 رکورد اول، 10 رکورد دوم و 10 رکورد سوم رو توی 3 تا datagridview نشون بدم. خب برای 10 رکورد اول باید از top 10 استفاده کنم اما برای بقیه اش چی؟ کارم خیلی گیر کرده لطفا اگه میدونید منو راهنمایی کنید :ناراحت:

oliya24
سه شنبه 19 آذر 1392, 11:31 صبح
سلام یه راه حل داری میتونی برای هر تیبلت از یک ویو view استفاده کنی یا اینکه تمام یک ویو بسازی برای تمام تیبل هات و دونه دونه فیلدهایی رو که میخوایی درشون درج کنی البته این مورد اخر برای زمانی هست که مقدار تمام ده فیلد ت در سه تیبلت ثابت باشه در کل از روش اول میتونی استفاده کنی

hossein_h62
سه شنبه 19 آذر 1392, 11:36 صبح
سلام
مثلا برای 10 رکورد دوم :
WITH HH AS
(
SELECT *,
ROW_NUMBER() OVER (ORDER BY id) AS RowNumber
FROM MyTable
)
SELECT *, RowNumber
FROM HH
WHERE RowNumber BETWEEN 11 AND 20;

Reza_Yarahmadi
سه شنبه 19 آذر 1392, 11:52 صبح
در صورت استفاده از SQL Server 2012 میتونید از دستور زیر استفاده کنید
SELECT Name
FROM YourTable
ORDER BY Name
OFFSET 20 ROWS FETCH NEXT 10 ROWS ONLY
این دستور 10 رکورد سوم رو نمایش میده. بجای اعداد میتونید از متغیر استفاده کنید.
اطلاعات بیشتر (http://technet.microsoft.com/en-us/library/gg699618.aspx)