Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Memangkas Sifar Utama dengan Cekap dalam Pelayan SQL Tanpa Kehilangan Data?
Teknik Dipertingkatkan untuk Mengalih Keluar Sifar Utama dalam Pelayan SQL
Kaedah standard untuk mengalih keluar sifar utama dalam SQL Server selalunya bergantung pada fungsi SUBSTRING
:
<code class="language-sql">SUBSTRING(str_col, PATINDEX('%[^0]%', str_col), LEN(str_col))</code>
Walau bagaimanapun, pendekatan ini mempunyai had. Jika lajur mengandungi hanya sifar, ia gagal kerana ia tidak dapat mencari aksara bukan sifar.
Alternatif menggunakan TRIM
menawarkan penyelesaian yang berbeza:
<code class="language-sql">REPLACE(LTRIM(REPLACE(str_col, '0', ' ')), ' ', '0')</code>
Tetapi kaedah ini mempunyai kelemahannya sendiri: ruang dalaman ditukar kepada sifar.
Kaedah unggul menangani isu ini:
<code class="language-sql">SUBSTRING(str_col, PATINDEX('%[^0]%', str_col+'.'), LEN(str_col))</code>
Menambah noktah (.
) pada penghujung menjamin aksara bukan sifar, memastikan PATINDEX
mengenal pasti kedudukan permulaan dengan betul. Teknik yang diperhalusi ini dengan cekap mengalih keluar sifar pendahuluan sambil mengekalkan integriti ruang terbenam dalam data.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memangkas Sifar Utama dengan Cekap dalam Pelayan SQL Tanpa Kehilangan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!