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

MySQLにsubstr_replaceのようなものはありますか?


これには、MySQLのINSERT()関数を使用します。 INSERT(str、pos、len、newstr)は、文字列strを返します。部分文字列は、位置posで始まり、len文字は文字列newstrに長く置き換えられます。 posが文字列の長さの範囲内にない場合は、元の文字列を返します。

lenが文字列の残りの部分の長さの範囲内にない場合は、位置posから文字列の残りの部分を置き換えます。引数がNULLの場合はNULLを返します。

まずテーブルを作成しましょう-

mysql> create table DemoTable
(
   Password varchar(50)
);
Query OK, 0 rows affected (0.51 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('76367_____8793443');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values('12345_____9899984322');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('99999_____4747747432');
Query OK, 1 row affected (0.22 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示する-

mysql> select *from DemoTable;

これにより、次の出力が生成されます-

+----------------------+
| Password             |
+----------------------+
| 76367_____8793443    |
| 12345_____9899984322 |
| 99999_____4747747432 |
+----------------------+
3 rows in set (0.00 sec)

以下は、MySQLでsubstr_replaceのINSERT()関数を実装するためのクエリです-

mysql> select insert(Password,5,length('PPPPPP'),'PPPPPP') from DemoTable;

これにより、次の出力が生成されます-

+----------------------------------------------+
| insert(Password,5,length('PPPPPP'),'PPPPPP') |
+----------------------------------------------+
| 7636PPPPPP8793443                            |
| 1234PPPPPP9899984322                         |
| 9999PPPPPP4747747432                         |
+----------------------------------------------+
3 rows in set (0.00 sec)

  1. MySQLLIKEをMySQLINとして実装するためのクエリ?

    MySQL IN()のようなクエリを実装するには、LIKE演算子とともにCOUNT()、IF()を使用する必要があります。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Subject varchar(80)    -> ); Query OK, 0 rows affected (0.58 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable valu

  2. JSONをMySQLテーブルに挿入しますか?

    テーブルを作成し、JSON型の列値を設定しましょう mysql> create table DemoTable1832      (      ListOfNames JSON      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1832(ListOfNames) values('["Sam", &quo