MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLでセッション変数を持つ文字が最初に出現した場合にのみ検索/置換を実行します


最初のオカレンスに対してのみ検索/置換を実行するには、CONCATおよびREPLACE()関数を使用します。

ユーザー定義のセッション変数を設定するためのクエリは次のとおりです-

mysql> set @Sentence='Thks ks is a my string';
Query OK, 0 rows affected (0.00 sec)

この場合、kは一度だけiに置き換えられます。クエリは次のとおりです。 INSTR()も使用しました-

mysql> select @Sentence as NewString ,CONCAT(REPLACE(LEFT(@Sentence,
INSTR(@Sentence, 'k')), 'k', 'i'),
   -> SUBSTRING(@Sentence, INSTR(@Sentence, 'k') + 1)) as ChangeOnlyOneTime;

以下は、文字の最初の出現のみが置き換えられたことを示す出力です-

+------------------------+------------------------+
| NewString              | ChangeOnlyOneTime      |
+------------------------+------------------------+
| Thks ks is a my string | This ks is a my string |
+------------------------+------------------------+
1 row in set (0.00 sec)

  1. MySQLテーブルで^文字を検索する方法は?

    ^文字を検索するには、次の構文のようにLIKE演算子を使用します- select table_schema,table_name,column_name  from information_schema.columns  where column_name like '%^%'; まずテーブルを作成しましょう- mysql> create table DemoTable1826      (      `^` varchar(20),      Name var

  2. MySQLで文字列の最初に繰り返される値のみを置き換える方法

    これには、REGEXP_REPLACE()を使用できます。文字列が-だとしましょう This is my first MySQL query. This is the first tutorial. I am learning for the first time. 特定の単語の最初の出現のみを置き換える必要があります。たとえば、「最初」としましょう。出力は-である必要があります This is my second MySQL query. This is the first tutorial. I am learning for the first time. テーブルを作成しましょう-