กวดวิชาSQL

SQL HOME บทนำ SQL ไวยากรณ์ SQL SQL Select SQL Select Distinct SQL ที่ไหน SQL และหรือไม่ใช่ คำสั่ง SQL โดย SQL แทรกลงใน ค่าว่างของ SQL SQL Update SQL Delete SQL Select Top SQL Min และ Max SQL Count, Avg, Sum SQL Like SQL Wildcards SQL ใน SQL ระหว่าง นามแฝงของ SQL การรวม SQL SQL Inner Join SQL เข้าร่วมด้านซ้าย SQL Right Join SQL เข้าร่วมแบบเต็ม เข้าร่วมด้วยตนเองของ SQL SQL Union กลุ่ม SQL โดย SQL มี SQL Exists SQL ใด ๆ ทั้งหมด SQL Select Into แทรก SQL ลงใน Select กรณี SQL ฟังก์ชัน SQL Null กระบวนงานที่เก็บไว้ของ SQL ข้อคิดเห็นของ SQL ตัวดำเนินการ SQL

ฐานข้อมูลSQL

SQL สร้าง DB SQL Drop DB ฐานข้อมูลสำรองของ SQL SQL สร้างตาราง SQL Drop Table SQL Alter Table ข้อจำกัดของ SQL SQL ไม่ใช่ Null SQL Unique คีย์หลักของ SQL คีย์ต่างประเทศของ SQL SQL Check SQL Default ดัชนี SQL SQL Auto Increment SQL Dates มุมมอง SQL การฉีด SQL SQL Hosting ประเภทข้อมูล SQL

การอ้างอิงSQL

คีย์เวิร์ด SQL ฟังก์ชัน MySQL ฟังก์ชันเซิร์ฟเวอร์ SQL ฟังก์ชัน MS Access SQL Quick Ref

ตัวอย่างSQL

ตัวอย่าง SQL แบบทดสอบ SQL แบบฝึกหัด SQL ใบรับรอง SQL

SQL TOP, LIMIT, FETCH FIRST หรือ ROWNUM Clause


SQL SELECT TOP ข้อ

SELECT TOPอนุประโยคใช้เพื่อระบุจำนวนเรคคอร์ดที่จะส่งคืน

อนุประโยค นี้SELECT TOPมีประโยชน์ในตารางขนาดใหญ่ที่มีเร็กคอร์ดนับพันรายการ การส่งคืนระเบียนจำนวนมากอาจส่งผลต่อประสิทธิภาพการทำงาน

หมายเหตุ:ระบบฐานข้อมูลบางระบบไม่สนับสนุนส่วน SELECT TOPคำสั่ง MySQL รองรับส่วนLIMITคำสั่งเพื่อเลือกจำนวนระเบียนที่จำกัด ในขณะที่ Oracle ใช้และ. FETCH FIRST n ROWS ONLYROWNUM

ไวยากรณ์การเข้าถึง SQL Server / MS:

SELECT TOP number|percent column_name(s)
FROM table_name
WHERE condition;

ไวยากรณ์ MySQL:

SELECT column_name(s)
FROM table_name
WHERE condition
LIMIT number;

ไวยากรณ์ Oracle 12:

SELECT column_name(s)
FROM table_name
ORDER BY column_name(s)
FETCH FIRST number ROWS ONLY;

ไวยากรณ์ Oracle ที่เก่ากว่า:

SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number;

Oracle Syntax ที่เก่ากว่า (พร้อม ORDER BY):

SELECT *
FROM (SELECT column_name(s) FROM table_name ORDER BY column_name(s))
WHERE ROWNUM <= number;

ฐานข้อมูลสาธิต

ด้านล่างนี้คือการเลือกจากตาราง "ลูกค้า" ในฐานข้อมูลตัวอย่าง Northwind:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden


SQL TOP, LIMIT และ FETCH FIRST Examples

คำสั่ง SQL ต่อไปนี้จะเลือกสามระเบียนแรกจากตาราง "ลูกค้า" (สำหรับ SQL Server/MS Access):

ตัวอย่าง

SELECT TOP 3 * FROM Customers;

คำสั่ง SQL ต่อไปนี้แสดงตัวอย่างที่เทียบเท่าสำหรับ MySQL:

ตัวอย่าง

SELECT * FROM Customers
LIMIT 3;

คำสั่ง SQL ต่อไปนี้แสดงตัวอย่างที่เทียบเท่าสำหรับ Oracle:

ตัวอย่าง

SELECT * FROM Customers
FETCH FIRST 3 ROWS ONLY;

ตัวอย่าง TOP PERCENT ของ SQL

คำสั่ง SQL ต่อไปนี้จะเลือก 50% แรกของเรคคอร์ดจากตาราง "ลูกค้า" (สำหรับ SQL Server/MS Access):

ตัวอย่าง

SELECT TOP 50 PERCENT * FROM Customers;

คำสั่ง SQL ต่อไปนี้แสดงตัวอย่างที่เทียบเท่าสำหรับ Oracle:

ตัวอย่าง

SELECT * FROM Customers
FETCH FIRST 50 PERCENT ROWS ONLY;

เพิ่ม CLAUSE ที่ไหน

คำสั่ง SQL ต่อไปนี้จะเลือกสามระเบียนแรกจากตาราง "ลูกค้า" โดยที่ประเทศคือ "เยอรมนี" (สำหรับ SQL Server/MS Access):

ตัวอย่าง

SELECT TOP 3 * FROM Customers
WHERE Country='Germany';

คำสั่ง SQL ต่อไปนี้แสดงตัวอย่างที่เทียบเท่าสำหรับ MySQL:

ตัวอย่าง

SELECT * FROM Customers
WHERE Country='Germany'
LIMIT 3;

คำสั่ง SQL ต่อไปนี้แสดงตัวอย่างที่เทียบเท่าสำหรับ Oracle:

ตัวอย่าง

SELECT * FROM Customers
WHERE Country='Germany'
FETCH FIRST 3 ROWS ONLY;