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

文字列から正確な単語を検索するMySQLクエリ?


文字列から正確な単語を検索するには、次の構文を使用します-

select *from yourTableName
where
yourColumnName regexp '(^|[[:space:]])yourWord([[:space:]]|$)';

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

mysql> create table DemoTable
   (
   Title text
   );
Query OK, 0 rows affected (0.23 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('This is the Introduction to Java');
Query OK, 1 row affected (0.05 sec)

mysql> insert into DemoTable values('This is the Introduction to MongoDB');
Query OK, 1 row affected (0.07 sec)

mysql> insert into DemoTable values('This is the Introduction to MySQL');
Query OK, 1 row affected (0.06 sec)

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

mysql> select *from DemoTable;

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

+-------------------------------------+
| Title                               |
+-------------------------------------+
| This is the Introduction to Java    |
| This is the Introduction to MongoDB |
| This is the Introduction to MySQL   |
+-------------------------------------+
3 rows in set (0.00 sec)

以下は、文字列から正確な単語を検索するためのクエリです。

mysql> select *from DemoTable
where
Title regexp '(^|[[:space:]])MySQL([[:space:]]|$)';

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

+-----------------------------------+
| Title                             |
+-----------------------------------+
| This is the Introduction to MySQL |
+-----------------------------------+
1 row in set (0.13 sec)

  1. 誰かが誤って「deom」と入力した場合に文字列「demo」を検索するMySQLクエリ?

    このために、LIKE演算子と一緒にSOUNDを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Name varchar(20)    -> ); Query OK, 0 rows affected (0.95 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('John'); Query OK, 1 ro

  2. カンマ区切りの文字列の位置から単一の値を取得するMySQLクエリ?

    これには、SUBSTRING_INDEX()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1615    -> (    -> ListOfSubject text    -> ); Query OK, 0 rows affected (0.81 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1615 values('Python,Java,MySQL