Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengekstrak Substrings daripada Rentetan Terhad dalam MySQL?
Pengekstrakan Substring MySQL menggunakan Pembatas
Mengekstrak subrentetan daripada rentetan dalam MySQL boleh dicapai menggunakan fungsi SUBSTRING_INDEX. Fungsi ini membolehkan anda menentukan pembatas untuk memisahkan subrentetan dan kedudukan subrentetan yang anda ingin keluarkan.
Sebagai contoh, pertimbangkan jadual berikut:
item_code | name | colors |
---|---|---|
102 | ball | red,yellow,green |
104 | balloon | yellow,orange,red |
Untuk mengekstrak warna sebagai subrentetan berasingan, anda boleh menggunakan pertanyaan berikut:
SELECT item_code, name, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', 1), ',', -1) AS color_first, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', 2), ',', -1) AS color_second FROM Product;
Fungsi SUBSTRING_INDEX digunakan dua kali dalam pertanyaan ini. Kali pertama ia digunakan untuk mencari subrentetan pertama, dan kali kedua ia digunakan untuk mengeluarkan subrentetan yang tinggal daripada hasil aplikasi pertama.
Output yang terhasil adalah seperti berikut:
item_code | name | color_first | color_second |
---|---|---|---|
102 | ball | red | yellow |
104 | balloon | yellow | orange |
Perhatikan bahawa versi pertanyaan yang lebih verbose yang mengambil semua subrentetan ialah:
SELECT item_code, name, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', 1), ',', -1) AS color_first, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', 2), ',', -1) AS color_second, SUBSTRING_INDEX(SUBSTRING_INDEX(colors, ',', 3), ',', -1) AS color_third FROM Product;
Ini lebih lama pertanyaan mendapatkan semula semua subrentetan daripada medan warna, menggunakan corak yang sama seperti pertanyaan yang lebih pendek.
Atas ialah kandungan terperinci Bagaimana untuk Mengekstrak Substrings daripada Rentetan Terhad dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!