2013-06-23 22 views

cevap

14

:
vb

SQL keman örneğin, => 6-10 5 Ofset Server 2005+ (setRowRow ve @endRow):

SELECT OrderingColumn 
FROM (
    SELECT OrderingColumn, ROW_NUMBER() OVER (ORDER BY OrderingColumn) AS RowNum 
    FROM MyTable 
) AS MyDerivedTable 
WHERE MyDerivedTable.RowNum BETWEEN @startRow and @endRow 

SQL keman örneği : http://sqlfiddle.com/#!3/b4b8c/4

+0

Merhaba! Kodun çalışıyor! Çok teşekkür ederim! Fakat bunun bir sorgusunda birden çoğunu yapmak mümkün müdür? Farklı başlangıçlara sahip üç farklı sütun ve bir sorguda sadece bir tablodan çıkma? Bu benzer: C1 | C2 | C3 aa | bb | cc dd | ee | ff gg | ss – Brenelyn

+0

@Brenelyn Resim endişeleri. Sorunuz hakkında: Neden farklı başlangıç ​​ve bitişlere sahip olmalısınız? Başka bir soruda detaylandırır mısın ve daha sonra bağlantıyı buraya yapıştırır mısın lütfen? –

+0

Burada tartışmak istedim istedim. [link] (http://stackoverflow.com/questions/17269078/subquery-returns-more-than-1-value-sql-error-on-multiple-selection) – Brenelyn

7

için şimdiden teşekkür ederiz, bu deneyin (sadece set offset)

SELECT * 
FROM  MyTable 
ORDER BY OrderingColumn ASC 
OFFSET 0 ROWS 
FETCH NEXT 5 ROWS ONLY 

OFFSET: Bu satırları döndürmek başlamadan önce
atlamak için satır sayısını belirtir sorgu ifadesinden.

FETCH NEXT:
OFFSET fıkra işlendikten sonra satır sayısı dönmek belirtir. OFFSET ve FETCH NEXT tanımları here adresinden

tanımları.

Sorgu 1:
0 Ofset => 1-5

Sorgu 2: SQL için http://sqlfiddle.com/#!6/b4b8c/2

+0

** SQL ** = sorgu dili, ** SQL Server ** = Microsoft RDBMS ürünü –

+0

Çok teşekkür ederim! Üzgünüz, başka sorulara çoğalttığınız için çok üzgünüm ne diyeceğimi bilmiyorum :) – Brenelyn

+0

@Brenelyn Sorun değil. Sadece mevcut sayfanıza göre ofset ayarladığınızdan emin olun. Sorgu 1 => Ofset 0 Sorgu 2 => Ofset 5 vb –

İlgili konular