Untuk melakukan carian/ganti hanya pada kejadian pertama, gunakan fungsi CONCAT dan REPLACE().
Pertanyaan seperti di bawah untuk menetapkan pembolehubah sesi yang ditentukan pengguna -
mysql> set @Sentence='Thks ks is a my string'; Query OK, 0 rows affected (0.00 sec)
Di sini, k akan digantikan dengan i sekali sahaja. Pertanyaannya adalah seperti berikut. Kami juga menggunakan INSTR() -
mysql> select @Sentence as NewString ,CONCAT(REPLACE(LEFT(@Sentence, INSTR(@Sentence, 'k')), 'k', 'i'), -> SUBSTRING(@Sentence, INSTR(@Sentence, 'k') + 1)) as ChangeOnlyOneTime;
Di bawah ialah output yang menunjukkan hanya kejadian pertama watak yang digantikan -
+------------------------+------------------------+ | NewString | ChangeOnlyOneTime | +------------------------+------------------------+ | Thks ks is a my string | This ks is a my string | +------------------------+------------------------+ 1 row in set (0.00 sec)
Atas ialah kandungan terperinci Lakukan carian/ganti hanya pada kejadian pertama pembolehubah sesi dalam MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!