Rumah > pangkalan data > tutorial mysql > Bagaimana untuk mengekstrak Elemen Terakhir Rentetan Selepas Slash Akhir dalam SQL?

Bagaimana untuk mengekstrak Elemen Terakhir Rentetan Selepas Slash Akhir dalam SQL?

Patricia Arquette
Lepaskan: 2024-12-26 06:18:11
asal
1025 orang telah melayarinya

How to Extract the Last Element of a String After the Final Slash in SQL?

Mengekstrak Elemen Terakhir Rentetan Pisah

Masalah:

Pertimbangkan jadual yang mengandungi nilai bentuk:

Articles/Search/ArtMID/2681/ArticleID/2218/Diet.aspx
OurStory/MeettheFoodieandtheMD.aspx
TheFood/OurMenu.aspx
Salin selepas log masuk

Objektifnya adalah untuk mengekstrak elemen terakhir selepas aksara "/" akhir daripada setiap rentetan, supaya outputnya menjadi:

Diet.aspx
MeettheFoodieandtheMD.aspx
OurMenu.aspx
Salin selepas log masuk
Salin selepas log masuk

Penyelesaian:

Pendekatan SQL:

Untuk mencapai ini dalam SQL, gunakan yang berikut pertanyaan:

SELECT SUBSTRING(string , LEN(string) -  CHARINDEX('/',REVERSE(string)) + 2  , LEN(string)  ) FROM SAMPLE;
Salin selepas log masuk
  • Fungsi SUBSTRING mengambil tiga argumen: kedudukan mula, panjang dan rentetan input.
  • Fungsi CHARINDEX mengesan kejadian pertama rentetan tertentu dalam rentetan lain .
  • REVERSE membalikkan rentetan input, membenarkan carian untuk yang terakhir "/".
  • Ungkapan ini mengira kedudukan permulaan subrentetan untuk diekstrak (hujung rentetan tolak panjang dari "/" terakhir hingga akhir ditambah 2).
  • The pertanyaan memilih subrentetan yang diekstrak daripada SAMPLE yang ditentukan jadual.

Contoh:

Untuk input yang disediakan, outputnya ialah:

Diet.aspx
MeettheFoodieandtheMD.aspx
OurMenu.aspx
Salin selepas log masuk
Salin selepas log masuk

Rujuk JSFiddle ini untuk demonstrasi langsung: http://sqlfiddle.com/#!3/41ead/11

Atas ialah kandungan terperinci Bagaimana untuk mengekstrak Elemen Terakhir Rentetan Selepas Slash Akhir dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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