Bagaimana untuk Mencari Indeks Terakhir Substring dalam MySQL?

Barbara Streisand
Lepaskan: 2024-11-10 14:45:02
asal
958 orang telah melayarinya

How to Find the Last Index of a Substring in MySQL?

MySQL: Mencari Indeks Terakhir Subrentetan

Dalam MySQL, fungsi INSTR() boleh digunakan untuk menentukan indeks kejadian pertama subrentetan. Walau bagaimanapun, jika timbul keperluan untuk memastikan indeks kejadian terakhir, tiada fungsi terbina dalam yang sedia menangani keperluan ini.

Menggunakan REVERSE() dan LOCATE()

Sebagai pendekatan alternatif, gabungan fungsi REVERSE() dan LOCATE() boleh digunakan untuk mencari kejadian terakhir aksara atau subrentetan. Strategi ini melibatkan pembalikan rentetan, mengenal pasti indeks menggunakan LOCATE(), dan kemudian menolak hasil daripada panjang rentetan asal.

Sebagai contoh, pernyataan berikut mendapatkan semula indeks terakhir aksara garis bawah dalam rentetan " Have_a_good_day":

SELECT CHAR_LENGTH("Have_a_good_day") - LOCATE('_', REVERSE("Have_a_good_day"))+1;
Salin selepas log masuk

Mengekstrak Bahagian Kiri Rentetan

Untuk mengekstrak bahagian kiri rentetan sebelum kejadian terakhir pembatas, gunakan:

SELECT LEFT("first_middle_last", CHAR_LENGTH("first_middle_last") - LOCATE('_', REVERSE("first_middle_last")));
Salin selepas log masuk

Memilih Bahagian Kanan Rentetan

Untuk mengasingkan bahagian kanan rentetan selepas kejadian terakhir pembatas, kaedah alternatif menggunakan fungsi SUBSTRING_INDEX() ialah disyorkan:

SELECT SUBSTRING_INDEX("first_middle_last", '_', -1);
Salin selepas log masuk

Walaupun mudah untuk LOCATE() memasukkan pilihan untuk mencari dari sebelah kanan, teknik ini menyediakan penyelesaian yang berkesan untuk mendapatkan indeks terakhir subrentetan dalam MySQL.

Atas ialah kandungan terperinci Bagaimana untuk Mencari Indeks Terakhir Substring dalam MySQL?. 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