The ИЗБЕРЕТЕ ТОП оператор в SQL показва ограничения брой записи или редове от таблицата на базата данни. Клаузата TOP в оператора указва колко реда се връщат.
Той показва най-горния N брой редове от таблиците в изхода. Тази клауза се използва, когато има хиляди записи, съхранени в таблиците на базата данни.
Да вземем прост пример: Ако таблица на студенти има голямо количество данни за студенти, операторът select TOP определя колко данни за студенти ще бъдат извлечени от дадената таблица.
Забележка: Всички системи за бази данни не поддържат ключовата дума TOP за избор на ограничен брой записи. Oracle поддържа ключовата дума ROWNUM, а MySQL поддържа ключовата дума LIMIT.
Синтаксис на клаузата TOP в SQL
SELECT TOP number | percent column_Name1, column_Name2, ....., column_NameN FROM table_name WHERE [Condition] ;
В синтаксиса, броя обозначава броя на редовете, показани отгоре в изхода. column_Name обозначава колоната, чийто запис искаме да покажем в изхода. Можем също да посочим условието с помощта на клаузата WHERE.
Примери за TOP клауза в SQL
Следните четири SQL примера ще ви помогнат как да използвате клаузата Number и Percent в SQL TOP в заявката:
Пример 1: В този пример имаме таблица, наречена автомобили с три колони:
Име на автомобила | Цвят на автомобила | Разходи за кола |
---|---|---|
Хюндай Крета | Бяло | 10 85 000 |
Хюндай Място | Бяло | 9 50 000 |
Хюндай i20 | червен | 9 00 000 |
Киа Сонет | Бяло | 10 00 000 |
Киа Селтос | черен | 8 00 000 |
Бързи желания | червен | 7 95 000 |
- Да предположим, че искате да покажете първите три имена и цвета на колата от горната таблица. За да направите това, трябва да въведете следната заявка в SQL:
SELECT TOP 3 Car_Name, Car_Color FROM Cars;
Тази заявка показва следната таблица на екрана:
Car_Name | Car_Color |
---|---|
Хюндай Крета | Бяло |
Хюндай Място | Бяло |
Хюндай i20 | червен |
Пример 2: В този пример имаме таблица, наречена Студент с три колони:
Stu_ID | Стю_Име | Стю_Маркс |
---|---|---|
1001 | Абхай | 85 |
1002 | Анкит | 75 |
1003 | Бхем | 60 |
1004 | Рам | 79 |
1005 | Sumit | 80 |
- Да предположим, че искате да покажете подробностите за първите четири ученика в резултата от горната таблица. За да направите това, трябва да въведете следната заявка в SQL:
SELECT TOP 4 * FROM Student;
Тази заявка показва следната таблица на екрана в SQL изхода:
операционна система linux
Stu_ID | Стю_Име | Стю_Маркс |
---|---|---|
1001 | Абхай | 85 |
1002 | Анкит | 75 |
1003 | Бхем | 60 |
1004 | Рам | 79 |
Пример 3: В този пример имаме таблица, наречена Служител с четири колони:
Emp_Id | Emp_Name | Emp_Salary | Emp_City |
---|---|---|---|
201 | Абхай | 25 000 | Гоа |
202 | Анкит | 45 000 | Делхи |
203 | Бхем | 30 000 | Гоа |
204 | Рам | 29 000 | Гоа |
205 | Sumit | 40 000 | Делхи |
- Да предположим, че искате да покажете подробности за първите четирима служители, чийто град е Гоа от горната таблица. За да направите това, трябва да въведете следната заявка в SQL:
SELECT TOP 4 * FROM Employee WHERE Emp_City = Goa ;
Тази заявка показва следната таблица на екрана в SQL изхода:
Emp_Id | Emp_Name | Emp_Salary | Emp_City |
---|---|---|---|
201 | Абхай | 25 000 | Гоа |
203 | Бхем | 30 000 | Гоа |
204 | Рам | 29 000 | Гоа |
Пример 4: В този пример имаме таблица, наречена Велосипеди с три колони:
Bike_Name | Bike_Color | Bike_Cost |
---|---|---|
KTM DUKE | черен | 185 000 |
Роял Енфийлд | черен | НУЛА |
Натиснете | червен | 90 0000 |
Apache | Бяло | НУЛА |
На живо | черен | 80 000 |
KTM RC | червен | 195 000 |
- Да предположим, че искате да покажете 50 процента от данните от горната таблица. За да направите това, трябва да въведете следната заявка в SQL:
SELECT TOP 50 PERCENT * FROM Bikes;
Тази заявка показва следната таблица на екрана:
Bike_Name | Bike_Color | Bike_Cost |
---|---|---|
KTM DUKE | черен | 185 000 |
Роял Енфийлд | черен | НУЛА |
Натиснете | червен | 90 0000 |
Синтаксис на клаузата LIMIT в MySQL
SELECT column_Name1,column_Name2, ....., column_NameN FROM table_name LIMIT value;
В синтаксиса трябва да посочим стойността след ключовата дума LIMIT. Стойността обозначава броя на редовете, които трябва да бъдат показани отгоре в изхода.
Пример за клауза LIMIT в MySQL
Следният SQL пример ще ви помогне как да използвате клаузата LIMIT в заявката. В този пример имаме таблица, наречена автомобили с три колони:
Име на автомобила | Цвят на автомобила | Разходи за кола |
---|---|---|
Хюндай Крета | Бяло | 10 85 000 |
Хюндай Място | Бяло | 9 50 000 |
Хюндай i20 | червен | 9 00 000 |
Киа Сонет | Бяло | 10 00 000 |
Киа Селтос | черен | 8 00 000 |
Бързи желания | червен | 7 95 000 |
- Да предположим, че искате да покажете първите три записа на Car, като използвате клауза LIMIT в MySQL. За да направите това, трябва да въведете следната заявка в MySQL:
SELECT * FROM Cars LIMIT 3;
Тази заявка показва следната таблица на екрана:
Име на автомобила | Цвят на автомобила | Разходи за кола |
---|---|---|
Хюндай Крета | Бяло | 10 85 000 |
Хюндай Място | Бяло | 9 50 000 |
Хюндай i20 | червен | 9 00 000 |
Синтаксис на ключова дума ROWNUM в клаузата WHERE в базата данни на Oracle
SELECT column_Name1,column_Name2, ....., column_NameN FROM table_name WHERE ROWNUM <= value; < pre> <p>In the syntax, we have to assign the value to ROWNUM in the WHERE clause. The value denotes the number of rows to be shown from the top in the output.</p> <h2>Example of ROWNUM keyword in WHERE Clause in Oracle</h2> <p>The following SQL example will help you how to use the ROWNUM keyword in the query. In this example, we have a table called <strong>Cars</strong> with three columns:</p> <table class="table"> <tr> <th>Car Name</th> <th>Car Color</th> <th>Car Cost</th> </tr> <tr> <td>Hyundai Creta</td> <td>White</td> <td>10,85,000</td> </tr> <tr> <td>Hyundai Venue</td> <td>White</td> <td>9,50,000</td> </tr> <tr> <td>Hyundai i20</td> <td>Red</td> <td>9,00,000</td> </tr> <tr> <td>Kia Sonet</td> <td>White</td> <td>10,00,000</td> </tr> <tr> <td>Kia Seltos</td> <td>Black</td> <td>8,00,000</td> </tr> <tr> <td>Swift Dezire</td> <td>Red</td> <td>7,95,000</td> </tr> </table> <ul> <li>Suppose, you want to show the first three records of Car using the ROWNUM keyword in Oracle. To do this, you have to type the following query in the Oracle database:</li> </ul> <pre> SELECT * FROM Cars WHERE ROWNUM <= 3; < pre> <p>This query shows the following table on the screen:</p> <table class="table"> <tr> <th>Car Name</th> <th>Car Color</th> <th>Car Cost</th> </tr> <tr> <td>Hyundai Creta</td> <td>White</td> <td>10,85,000</td> </tr> <tr> <td>Hyundai Venue</td> <td>White</td> <td>9,50,000</td> </tr> <tr> <td>Hyundai i20</td> <td>Red</td> <td>9,00,000</td> </tr> </table> <hr></=></pre></=>=>