在MySQL中,可以使用LIKE关键字进行模糊查询。LIKE是SQL中的一个操作符,用于在WHERE子句中搜索列中的指定模式。模式可以包含普通字符和通配符。
以下是使用LIKE进行模糊查询的基本语法:
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern;
其中,
column_name
是要搜索的列名。s
是可选的,表示要返回的列数。如果省略,则返回所有匹配的行。table_name
是要从中检索数据的表名。pattern
是要搜索的模式。模式可以包含普通字符(与SQL语句中的字符相同)和通配符。通配符有两种:
%
:代表任意数量的字符(包括零个字符)。_
:代表一个单独的字符。以下是一些使用LIKE进行模糊查询的示例:
-- 查找所有名字以"张"开头的用户
SELECT * FROM users WHERE name LIKE '张%';
-- 查找所有名字包含"三"的用户
SELECT * FROM users WHERE name LIKE '%三%';
-- 查找所有名字以"李"开头且长度为4的用户
SELECT * FROM users WHERE name LIKE '李___';
请注意,在使用LIKE进行模糊查询时,如果模式的开头或结尾使用了通配符(%
或 _
),那么匹配将不区分大小写。但是,如果模式中间使用了通配符,那么匹配将区分大小写。如果需要进行不区分大小写的模糊查询,可以使用BINARY关键字。例如:
-- 查找所有名字不区分大小写地包含"李"的用户
SELECT * FROM users WHERE BINARY name LIKE '%李%';