Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Menjana Baris untuk JOIN dalam MySQL Tanpa `CONNECT BY` atau Fungsi Serupa Oracle?

Bagaimanakah Saya Boleh Menjana Baris untuk JOIN dalam MySQL Tanpa `CONNECT BY` atau Fungsi Serupa Oracle?

Linda Hamilton
Lepaskan: 2025-01-15 10:02:43
asal
142 orang telah melayarinya

How Can I Generate Rows for JOINs in MySQL Without Oracle's `CONNECT BY` or Similar Functions?

MySQL JOIN: Penjanaan Baris Tanpa Oracle CONNECT BY

Tidak seperti klausa CONNECT BY LEVEL Oracle yang mudah untuk menjana set baris dalam cantuman, MySQL tidak mempunyai persamaan langsung. Pendekatan Oracle memudahkan mencipta urutan untuk gabungan:

<code class="language-sql">SELECT *
FROM dual
CONNECT BY LEVEL < p></code>
Salin selepas log masuk

Begitu juga, MS SQL Server menggunakan rekursi:

<code class="language-sql">WITH hier(row) AS (
    SELECT 1
    UNION ALL
    SELECT row + 1
    FROM hier
    WHERE row < p></code>
Salin selepas log masuk

Tawaran PostgreSQL generate_series:

<code class="language-sql">SELECT *
FROM generate_series(1, n)</code>
Salin selepas log masuk

Walau bagaimanapun, MySQL memerlukan strategi alternatif untuk menjana baris yang diperlukan dalam operasi JOIN. Ini selalunya melibatkan penyelesaian atau alatan luaran kerana ketiadaan penjana baris terbina dalam.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjana Baris untuk JOIN dalam MySQL Tanpa `CONNECT BY` atau Fungsi Serupa Oracle?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan