MySQL的member of是一個(gè)非常有用的操作符,可以用來查詢一個(gè)值是否存在于一個(gè)集合中。如果值存在于集合中,則返回1,否則返回0。
SELECT value FROM table_name WHERE value MEMBER OF (set_value);
這個(gè)查詢語句中的value是待查詢的值,table_name是數(shù)據(jù)表的名稱,set_value是一個(gè)集合,可以是一個(gè)數(shù)組或者是一個(gè)列表。
例如,如果我們有一個(gè)表叫做fruit,有一個(gè)字段叫做name,它是一個(gè)字符串類型的字段。我們想要查詢出所有名字為“apple”、“banana”或者“orange”的記錄:
SELECT name FROM fruit WHERE name MEMBER OF ('apple', 'banana', 'orange');
結(jié)果會(huì)返回所有符合條件的記錄的name字段值,這些值可以是任意順序的。
member of還可以與in操作符一起使用,這樣就可以更方便地查詢一個(gè)字段是否存在于一個(gè)集合中。例如:
SELECT name FROM fruit WHERE name IN ('apple', 'banana', 'orange');
與下面的member of查詢是一樣的:
SELECT name FROM fruit WHERE name MEMBER OF ('apple', 'banana', 'orange');
但是使用member of操作符可以讓代碼更加清晰易懂。