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

MySQLでキーワード検索を実装する方法は?


MySQLでキーワード検索を実装するには、LIKE演算子を使用できます。構文は次のとおりです-

SELECT *FROM yourTableName
where yourColumnName Like ‘%anyKeywordName%’
or yourColumnName Like ‘%anyKeywordName%’;

さらに理解するために、最初にテーブルを作成しましょう。以下は、テーブルを作成するためのクエリです-

mysql> create table KeywordSearchDemo
   −> (
   −> StudentId int
   −> ,
   −> StudentName varchar(100)
   −> );
Query OK, 0 rows affected (0.86 sec)

INSERTコマンドを使用して、テーブルにいくつかのレコードを挿入します。レコードを挿入するためのクエリは次のとおりです-

mysql> insert into KeywordSearchDemo values(100,'Adam John');
Query OK, 1 row affected (0.40 sec)

mysql> insert into KeywordSearchDemo values(101,'John Smith');
Query OK, 1 row affected (0.17 sec)

mysql> insert into KeywordSearchDemo values(103,'John Taylor');
Query OK, 1 row affected (0.15 sec)

mysql> insert into KeywordSearchDemo values(104,'Carol Taylor');
Query OK, 1 row affected (0.21 sec)

mysql> insert into KeywordSearchDemo values(105,'Maria Garcia');
Query OK, 1 row affected (0.20 sec)

mysql> insert into KeywordSearchDemo values(106,'James Smith');
Query OK, 1 row affected (0.12 sec)

mysql> insert into KeywordSearchDemo values(110,'Mike Brown');
Query OK, 1 row affected (0.22 sec)

selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-

mysql> select *from KeywordSearchDemo;

以下は出力です-

+-----------+--------------+
| StudentId | StudentName  |
+-----------+--------------+
|       100 | Adam John    |
|       101 | John Smith   |
|       103 | John Taylor  |
|       104 | Carol Taylor |
|       105 | Maria Garcia |
|       106 | James Smith  |
|       110 | Mike Brown   |
+-----------+--------------+
7 rows in set (0.00 sec)

これは、キーワードに関連する名前のみを選択するクエリです。クエリは次のとおりです-

mysql> select StudentName from KeywordSearchDemo
   −> where StudentName Like '%John%' or StudentName Like '%Taylor%';

以下は、キーワード「ジョン」と「テイラー」のレコードを表示する出力です-

+--------------+
| StudentName  |
+--------------+
| Adam John    |
| John Smith   |
| John Taylor  |
| Carol Taylor |
+--------------+
4 rows in set (0.10 sec)

テーブルからStudentId列も返すことができます。

mysql> select *from KeywordSearchDemo
   −> where StudentName Like '%John%' or StudentName Like '%Taylor%';

以下は出力です-

+-----------+--------------+
| StudentId | StudentName  |
+-----------+--------------+
|       100 | Adam John    |
|       101 | John Smith   |
|       103 | John Taylor  |
|       104 | Carol Taylor |
+-----------+--------------+
4 rows in set (0.00 sec)

  1. MySQLの列間を検索する方法は?

    BETWEEN句を使用して、列間を検索します。まずテーブルを作成しましょう- mysql> create table DemoTable    (    Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    Score1 int,    Score2 int    ); Query OK, 0 rows affected (0.78 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert in

  2. MySQL LIKEクエリを使用して、%を含む列値を検索するにはどうすればよいですか?

    %を使用して列の値を検索する場合、構文は次のようになります- select * from yourTableName  where yourColumnName LIKE '\%%'; まずテーブルを作成しましょう- mysql> create table DemoTable1497    -> (    -> Name varchar(20)    -> ); Query OK, 0 rows affected (0.55 sec) insert-を使用して、テーブルにいくつかの