Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengganti Kata Kunci LIMIT MySQL dengan Setara ANSI SQL?

Bagaimana untuk Mengganti Kata Kunci LIMIT MySQL dengan Setara ANSI SQL?

Susan Sarandon
Susan Sarandonasal
2024-12-15 06:38:13656semak imbas

How to Replace MySQL's LIMIT Keyword with ANSI SQL Equivalents?

ANSI SQL Equivalents untuk Kata Kunci MySQL LIMIT

Kata kunci MySQL LIMIT digunakan untuk mengehadkan bilangan baris yang diambil oleh pernyataan SELECT. Walaupun ia digunakan secara meluas dalam MySQL, ia bukan sebahagian daripada standard ANSI SQL. Artikel ini menyediakan alternatif ANSI SQL kepada kata kunci LIMIT, membolehkan anda mencapai kefungsian yang serupa merentas sistem pangkalan data yang berbeza.

1. DB2:

SELECT * FROM table FETCH FIRST 10 ROWS ONLY;

2. Informix:

SELECT FIRST 10 * FROM table;

3. Pelayan dan Akses Microsoft SQL:

SELECT TOP 10 * FROM table;

4. Oracle:

SELECT * FROM (SELECT * FROM table) WHERE rownum <= 10;

5. PostgreSQL:

SELECT * FROM table LIMIT 10;

Contoh:

Pertimbangkan pernyataan MySQL:

SELECT * FROM People WHERE Age > 18 LIMIT 2;

yang mengembalikan dua baris pertama di mana Age adalah lebih besar daripada 18. Penyataan ANSI SQL yang setara akan jadi:

  • DB2:

    SELECT * FROM People WHERE Age > 18 FETCH FIRST 2 ROWS ONLY;
  • Informix:

    SELECT FIRST 2 * FROM People WHERE Age > 18;
  • Microsoft SQL Server / Akses:

    SELECT TOP 2 * FROM People WHERE Age > 18;
  • Oracle:

    SELECT * FROM (SELECT * FROM People WHERE Age > 18) WHERE rownum <= 2;
  • PostgreSQL:

    SELECT * FROM People WHERE Age > 18 LIMIT 2;

Oleh menggunakan alternatif ANSI SQL ini, anda boleh memastikan keserasian dengan sistem pangkalan data yang berbeza sambil mencapai hasil yang sama seperti kata kunci MySQL LIMIT.

Atas ialah kandungan terperinci Bagaimana untuk Mengganti Kata Kunci LIMIT MySQL dengan Setara ANSI SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn