عبارت SQL SELECT TOP

بند SELECT TOP برای تعیین تعداد رکوردهایی که باید برگردانده شوند استفاده می شود.

بند SELECT TOP در جداول بزرگ با هزاران رکورد مفید است. بازگرداندن تعداد زیادی رکورد می تواند بر عملکرد تأثیر بگذارد.

توجه: همه سیستم های پایگاه داده از بند SELECT TOP پشتیبانی نمی کنند. MySQL از بندLIMIT برای انتخاب تعداد محدودی از رکوردها پشتیبانی می کند، در حالی که اوراکل از FETCH FIRST n ROWS ONLY و ROWNUM پشتیبانی می کند.

:SQL Server / MS Access Syntax
SELECT TOP number|percent column_name(s)
FROM table_name
;WHERE condition
:MySQL Syntax
SELECT column_name(s)
FROM table_name
WHERE condition
;LIMIT number
:Oracle 12 Syntax
SELECT column_name(s)
FROM table_name
ORDER BY column_name(s)
;FETCH FIRST number ROWS ONLY
:Older Oracle Syntax
SELECT column_name(s)
FROM table_name
;WHERE ROWNUM <= number
:Older Oracle Syntax (with ORDER BY)
 * SELECT
FROM (SELECT column_name(s) FROM table_name ORDER BY column_name(s))
;WHERE ROWNUM <= number

در زیر منتخبی از جدول “مشتریان” در پایگاه داده نمونه Northwind آمده است:

نمونه های SQL TOP، LIMIT و FETCH FIRST

عبارت SQL زیر سه رکورد اول را از جدول “Customers” (برای SQL Server/MS Access) انتخاب می کند:

;SELECT TOP 3 * FROM Customers

عبارت SQL زیر مثال معادل MySQL را نشان می دهد:

SELECT * FROM Customers
;LIMIT 3

عبارت SQL زیر مثالی معادل اوراکل را نشان می دهد:

SELECT * FROM Customers
;FETCH FIRST 3 ROWS ONLY

بدون دیدگاه

دیدگاهتان را بنویسید