MySQL データベースのセットで値を見つける

Preet Sanghavi 2023年1月30日
  1. MySQL でテーブルを作成する
  2. FIND_IN_SET() を使用して、MySQL データベースのセット内の値を検索する
MySQL データベースのセットで値を見つける

このチュートリアルでは、値の出現を確認する方法、または MySQL データベースのセット内の値を見つける方法を探ることを目的としています。

これは、IN() 関数または FIND_IN_SET() 関数のいずれかを使用して実行できます。MySQL データベースの FIND_IN_SET() 関数を使用して調べてみましょう。

FIND_IN_SET() 関数は主に 2つの引数を取ります。最初の引数は検索される値であり、2 番目の引数は値が検索されるセットです。

これは、FIND_IN_SET("search", {search_here}) として説明できます。MySQL サーバーでこの関数を使用してみましょう。

MySQL でテーブルを作成する

始める前に、操作するダミーデータセットを作成します。ここでは、いくつかの行とともにテーブル student_details を作成します。

-- create the table student_details
CREATE TABLE student_details(
  stu_id int,
  stu_firstName varchar(255) DEFAULT NULL,
  stu_lastName varchar(255) DEFAULT NULL,
  primary key(stu_id)
);
-- insert rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName)
 VALUES(1,"Preet","Sanghavi"),
 (2,"Rich","John"),
 (3,"Veron","Brow"),
 (4,"Geo","Jos"),
 (5,"Hash","Shah"),
 (6,"Sachin","Parker"),
 (7,"David","Miller");

上記のクエリは、生徒の名前と名前を含む行を含むテーブルを作成します。データのエントリを表示するには、次のコードを使用します。

SELECT * FROM student_details;

上記のコードは、次の出力を提供します。

stu_id  stu_firstName   stu_lastName
1         Preet         Sanghavi
2         Rich          John
3         Veron         Brow
4         Geo           Jos
5         Hash          Shah
6         Sachin        Parker
7         David         Miller

FIND_IN_SET() を使用して、MySQL データベースのセット内の値を検索する

テーブル student_details が正常に作成され、視覚化されました。stu_firstName のセットから特定の名前を見つけてみましょう。

上記のタスクを実行するための構文は、次のように説明できます。

SELECT FIND_IN_SET("value_to_be_searched", {set});

ここで、ご覧のとおり、value_to_be_searched という用語は、テーブルで検索する必要のある実際の値に置き換えられます。

Davidstu_firstName 列に存在するかどうかを識別しましょう。これは、次のクエリを使用して実行できます。

SELECT FIND_IN_SET("David", stu_firstName) as boolean_here from student_details ;

上記のコードの出力は、次のように説明できます。

boolean_here
0
0
0
0
0
0
1

注:ここでエイリアスとして使用されている AS キーワードに注意することが重要です。エイリアスを使用して、クエリをより読みやすく包括的にします。

ただし、この機能は MySQL バージョン 4.0 以降でのみ使用できます。したがって、MySQL で FIND_IN_SET() 関数を使用する方法を理解できました。

著者: Preet Sanghavi
Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub

関連記事 - MySQL Database