Menjana Siri Nombor Jujukan dalam SQL
Artikel ini menunjukkan cara menjana jujukan nombor dalam julat tertentu dalam SQL. Bayangkan anda memerlukan senarai nombor dari 1000 hingga 1050, setiap satu pada baris yang berasingan.
Kaedah 1: NILAI dan Cantuman Silang
Satu teknik menggunakan klausa VALUES
untuk mencipta set nombor sementara dan menggabungkannya melalui cantuman silang.
<code class="language-sql">WITH x AS (SELECT n FROM (VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9)) v(n)) SELECT ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) FROM x ones, x tens, x hundreds, x thousands ORDER BY 1;</code>
Ini menjana nombor 0-9999. Melaraskan klausa VALUES
mengehadkan output kepada julat yang diingini.
Kaedah 2: Jadual Digit Individu
Pendekatan yang lebih eksplisit menggunakan jadual berasingan untuk satu, puluhan, ratusan dan ribuan tempat.
<code class="language-sql">SELECT ones.n + 10*tens.n + 100*hundreds.n + 1000*thousands.n FROM (VALUES(0),(1),(2),(3),(4),(5),(6),(7),(8),(9)) ones(n), (VALUES(0),(1),(2),(3),(4),(5),(6),(7),(8),(9)) tens(n), (VALUES(0),(1),(2),(3),(4),(5),(6),(7),(8),(9)) hundreds(n), (VALUES(0),(1),(2),(3),(4),(5),(6),(7),(8),(9)) thousands(n) ORDER BY 1;</code>
Ini menawarkan kawalan tepat ke atas proses penjanaan nombor dan mudah berskala untuk julat yang lebih besar. Kedua-dua kaedah menyediakan penyelesaian yang fleksibel untuk mencipta urutan berangka dalam SQL, boleh disesuaikan dengan keperluan yang berbeza.
Atas ialah kandungan terperinci Bagaimana untuk Menjana Julat Nombor dalam SQL Antara Parameter Ditentukan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!