SQL SELECT TOP комманд
SELECT TOP коммандад буцаах бичлэгийн тоог зааж өгдөг.
SELECT TOP комманд нь олон мянган бичлэг агуулж буй том хүснэгтүүдэд ашигладаг.
Анхаарах зүйл
Өгөгдлийн сангийн програмууд SELECT TOP заалтыг бүгд дэмждэггүй.
MySQL нь LIMIT буюу хязгаарлагдмал тооны бичлэгийг сонгох заалтыг дэмждэг бол Oracle нь ROWNUM ашигладаг.
MS ACCESS бичэглэл
SELECT TOP number|percent Багана_нэр
FROM Хүснэгт_нэр
WHERE Нөхцөл;
My SQL бичэглэл
SELECT Багана_нэр
FROM Хүснэгт_нэр
WHERE Нөхцөл
LIMIT number;
Oracle бичэглэл
SELECT Багана_нэр(s)
FROM Хүснэгт_нэр
WHERE ROWNUM <= number;
Employee хүснэгт дээр жишээ авъя
Employee хүснэгтийн бүх талбарыг дэлгэцэд харуулж байна
EmployeeID | FirstName | LastName | Phone | |
---|---|---|---|---|
1 | Золбаяр | Жаргалсайхан | zoloo777@gmail.com | 88005487 |
2 | Дорж | Болд | bold@gmail.com | 88445578 |
3 | Гүндалай | Анхбаяр | ankhbayar@gmail.com | 88091547 |
4 | Дорж | Наранбулаг | naran@gmail.com | 88346578 |
5 | Энхбаяр | Батболд | batbold@gmail.com | 99586478 |
SQL TOP, LIMIT болон ROWNUM
MS ACCESS бичэглэл
SELECT TOP комманд ашиглан employee хүснэгтээс эхний 3-н бичлэгийг буцааж үзье.
SELECT TOP 3 * FROM Employee;
Үр дүн
EmployeeID | FirstName | LastName | Phone | |
---|---|---|---|---|
1 | Золбаяр | Жаргалсайхан | zoloo777@gmail.com | 88005487 |
2 | Дорж | Болд | bold@gmail.com | 88445578 |
3 | Гүндалай | Анхбаяр | ankhbayar@gmail.com | 88091547 |
My SQL бичэглэл
LIMIT комманд ашиглан employee хүснэгтээс эхний 3-н бичлэгийг буцааж үзье.
SELECT * FROM Employee
LIMIT 3;
Үр дүн
EmployeeID | FirstName | LastName | Phone | |
---|---|---|---|---|
1 | Золбаяр | Жаргалсайхан | zoloo777@gmail.com | 88005487 |
2 | Дорж | Болд | bold@gmail.com | 88445578 |
3 | Гүндалай | Анхбаяр | ankhbayar@gmail.com | 88091547 |
ORACLE бичэглэл
ROWNUM комманд ашиглан employee хүснэгтээс эхний 3-н бичлэгийг буцааж үзье.
SELECT * FROM Employee
WHERE ROWNUM <= 3;
Үр дүн
EmployeeID | FirstName | LastName | Phone | |
---|---|---|---|---|
1 | Золбаяр | Жаргалсайхан | zoloo777@gmail.com | 88005487 |
2 | Дорж | Болд | bold@gmail.com | 88445578 |
3 | Гүндалай | Анхбаяр | ankhbayar@gmail.com | 88091547 |
ACCESS SELECT TOP PERCENT бичиглэл
PERCENT түлхүүр үг ашиглан хүснэгтийн бичлэгийг хувьар илэрхийлэн утга буцааж болно. Employee хүснэгтийн эхний 40%-г буцааж үзье.
SELECT TOP 40 PERCENT * FROM Employee;
Үр дүн
EmployeeID | FirstName | LastName | Phone | |
---|---|---|---|---|
1 | Золбаяр | Жаргалсайхан | zoloo777@gmail.com | 88005487 |
2 | Дорж | Болд | bold@gmail.com | 88445578 |
WHERE нөхцлийн нэмж болно /MS ACCESS/
WHERE нөхцөл давхар ашиглаж болно. firstName нь 'Дорж' гэсэн утга агуулж буй эхний 2 бичлэгийг буцааж үзье.
SELECT TOP 2 * FROM Employee
WHERE firstName = 'Дорж';
Үр дүн
EmployeeID | FirstName | LastName | Phone | |
---|---|---|---|---|
2 | Дорж | Болд | bold@gmail.com | 88445578 |
4 | Дорж | Наранбулаг | naran@gmail.com | 88346578 |
LIMIT түлхүүр үг ашиглаж firstName = 'Дорж' утга агуулж буй эхний 2 бичлэгийг буцааж үзье /My SQL бичиглэл/.
SELECT * FROM Employee
WHERE firstName = 'Дорж'
LIMIT = 2;
Үр дүн
EmployeeID | FirstName | LastName | Phone | |
---|---|---|---|---|
2 | Дорж | Болд | bold@gmail.com | 88445578 |
4 | Дорж | Наранбулаг | naran@gmail.com | 88346578 |
ROWNUM түлхүүр үг ашиглаж firstName = 'Дорж' утга агуулж буй эхний 2 бичлэгийг буцааж үзье /ORACLE бичиглэл/.
SELECT * FROM Employee
WHERE firstName = 'Дорж' AND ROWNUM <= 2;
Үр дүн
EmployeeID | FirstName | LastName | Phone | |
---|---|---|---|---|
2 | Дорж | Болд | bold@gmail.com | 88445578 |
4 | Дорж | Наранбулаг | naran@gmail.com | 88346578 |