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
という用語は、テーブルで検索する必要のある実際の値に置き換えられます。
値 David
が stu_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()
関数を使用する方法を理解できました。