Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Cari Kejadian Terakhir Subrentetan dalam Pelayan SQL?

Bagaimanakah Saya Boleh Cari Kejadian Terakhir Subrentetan dalam Pelayan SQL?

Susan Sarandon
Susan Sarandonasal
2025-01-12 12:51:42637semak imbas

How Can I Find the Last Occurrence of a Substring in SQL Server?

Mencari Subrentetan Akhir dengan Cekap dalam Pelayan SQL

Bekerja dengan rentetan dalam SQL Server selalunya memerlukan penentuan contoh terakhir subrentetan tertentu. Walaupun fungsi seperti SUBSTRING dan CHARINDEX berguna untuk pengekstrakan subrentetan, pendekatan yang lebih ringkas wujud untuk mencari kejadian terakhir.

Tugas ini dikendalikan dengan elegan dengan menggabungkan fungsi RIGHT() dan CHARINDEX(). Untuk menggambarkan, mari kita ekstrak bahagian nama pangkalan data (DB_NAME()) mengikut garis bawah terakhir:

<code class="language-sql">SELECT RIGHT(DB_NAME(), CHARINDEX('_', REVERSE(DB_NAME()) + '_') - 1)</code>

Pertanyaan membalikkan nama pangkalan data dengan bijak, mencari garis bawah akhir, dan kemudian mengekstrak aksara di sebelah kanannya.

Sebaliknya, untuk mengekstrak teks sebelum garis bawah terakhir, gunakan LEFT() dan CHARINDEX():

<code class="language-sql">SELECT LEFT(DB_NAME(), LEN(DB_NAME()) - CHARINDEX('_', REVERSE(DB_NAME()) + '_'))</code>

Ini membalikkan nama pangkalan data, mengenal pasti garis bawah terakhir dan mengembalikan aksara sebelumnya.

Kaedah ini menyediakan penyelesaian yang lebih bersih dan cekap untuk mengenal pasti subrentetan terakhir dalam SQL Server, mengelakkan manipulasi rentetan berbelit-belit.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Cari Kejadian Terakhir Subrentetan dalam Pelayan 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