Rumah >pangkalan data >tutorial mysql >Bagaimanakah saya Boleh Menormalkan Subskrip Array PostgreSQL untuk Bermula pada 1?
Menyeragamkan Indeks Array PostgreSQL untuk Bermula pada 1
Fleksibiliti PostgreSQL membolehkan indeks tatasusunan bermula pada sebarang nombor. Walau bagaimanapun, menormalkan tatasusunan untuk bermula pada indeks 1 selalunya bermanfaat.
Kaedah Lama
Sebelum Postgres 9.6, penyelesaian diperlukan:
<code class="language-sql">SELECT ('[5:7]={1,2,3}'::int[])[array_lower('[5:7]={1,2,3}'::int[], 1):array_upper('[5:7]={1,2,3}'::int[], 1)]</code>
Pendekatan Ringkas (Postgres 9.6 dan lebih baru)
Postgres 9.6 memperkenalkan kaedah yang lebih ringkas dan cekap:
<code class="language-sql">SELECT my_arr[:];</code>
Untuk literal tatasusunan eksplisit, gunakan kurungan untuk kejelasan:
<code class="language-sql">SELECT ('[5:7]={1,2,3}'::int[])[:];</code>
Pendekatan diperkemas ini memberikan prestasi yang setanding dengan kaedah lama, menjadikannya penyelesaian yang disyorkan untuk Postgres 9.6 dan versi seterusnya.
Atas ialah kandungan terperinci Bagaimanakah saya Boleh Menormalkan Subskrip Array PostgreSQL untuk Bermula pada 1?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!