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

MySQLで特定のプレフィックスを持つ文字列を見つける方法は?


LIKE演算子を使用して、指定されたプレフィックスを持つ文字列を検索できます。

構文は次のとおりです

select *from yourTableName where yourColumnName LIKE 'yourPrefixValue%';

上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです

mysql> create table findStringWithGivenPrefixDemo
   -> (
   -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> UserMessage text
   -> );
Query OK, 0 rows affected (0.82 sec)

挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。

クエリは次のとおりです

mysql> insert into findStringWithGivenPrefixDemo(UserMessage) values('Hi Good Morning !!!');
Query OK, 1 row affected (0.17 sec)
mysql> insert into findStringWithGivenPrefixDemo(UserMessage) values('Hey I am busy!!');
Query OK, 1 row affected (0.20 sec)
mysql> insert into findStringWithGivenPrefixDemo(UserMessage) values('Hello what are you doing!!!');
Query OK, 1 row affected (0.47 sec)
mysql> insert into findStringWithGivenPrefixDemo(UserMessage) values('Hi I am learning MongoDB!!!');
Query OK, 1 row affected (0.15 sec)

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

クエリは次のとおりです

mysql> select *from findStringWithGivenPrefixDemo;

以下は出力です

+--------+-----------------------------+
| UserId | UserMessage                 |
+--------+-----------------------------+
| 1      | Hi Good Morning !!!         |
| 2      | Hey I am busy!!             |
| 3      | Hello what are you doing!!! |
| 4      | Hi I am learning MongoDB!!! |
+--------+-----------------------------+
4 rows in set (0.00 sec)

プレフィックスが指定された文字列を検索するためのクエリは次のとおりです

mysql> select *from findStringWithGivenPrefixDemo where UserMessage LIKE 'Hi%';

以下は、プレフィックス「Hi」の文字列のみを表示する出力です

+--------+-----------------------------+
| UserId | UserMessage                 |
+--------+-----------------------------+
| 1      | Hi Good Morning !!!         |
| 4      | Hi i am learning MongoDB!!! |
+--------+-----------------------------+
2 rows in set (0.00 sec)

  1. MySQLで特定の列名を持つテーブルを見つける方法は?

    列名を見つけるには、information_schema.columnsを使用します。以下は構文です- select distinct table_name from information_schema.columns where column_name like '%yourSearchValue%' and table_schema=database(); さまざまなテーブルで列名を見つけるために、上記の構文を実装しましょう。ここでは、特定の列名が「クライアント」という単語を持つテーブル名のみが必要です- mysql> select distinct table_

  2. MySQLクエリでCASE条件でカウントを使用するにはどうすればよいですか?

    MySQLでこれにCASEWHENを使用し、COUNT()メソッド内でCASE条件を設定してカウントします。まずテーブルを作成しましょう- mysql> create table DemoTable1374    -> (    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> Name varchar(20),    -> Score int    -> ); Query OK, 0 rows affe