怎样通过LIKE实现MySQL的数据筛选

avatar
作者
猴君
阅读量:0

在MySQL中,可以使用LIKE关键字实现模糊查询,从而筛选出符合条件的数据。以下是使用LIKE实现数据筛选的几种方法:

  1. 基本LIKE查询:
SELECT * FROM table_name WHERE column_name LIKE 'pattern'; 

其中,table_name是要查询的表名,column_name是要筛选的列名,pattern是模糊匹配的模式。例如,如果要查询所有名字以"张"开头的用户,可以使用以下语句:

SELECT * FROM users WHERE name LIKE '张%'; 
  1. 使用通配符:

MySQL中LIKE语句支持两个通配符:%_。其中,%表示匹配任意个字符(包括0个字符),_表示匹配任意一个字符。

  • 使用%进行模糊匹配:

    SELECT * FROM table_name WHERE column_name LIKE '%pattern%'; 

    例如,如果要查询所有名字包含"三"的用户,可以使用以下语句:

    SELECT * FROM users WHERE name LIKE '%三%'; 
  • 使用_进行模糊匹配:

    SELECT * FROM table_name WHERE column_name LIKE '_pattern'; 

    例如,如果要查询所有名字只有两个字,且第二个字是"三"的用户,可以使用以下语句:

    SELECT * FROM users WHERE name LIKE '_三'; 
  1. 使用LIKE与AND、OR、NOT组合进行复杂查询:

可以通过组合LIKE关键字与其他逻辑运算符(如AND、OR、NOT)来进行更复杂的查询。

  • 使用AND进行多个条件查询:

    SELECT * FROM table_name WHERE column_name1 LIKE 'pattern1' AND column_name2 LIKE 'pattern2'; 
  • 使用OR进行多个条件查询:

    SELECT * FROM table_name WHERE column_name1 LIKE 'pattern1' OR column_name2 LIKE 'pattern2'; 
  • 使用NOT进行否定查询:

    SELECT * FROM table_name WHERE NOT column_name LIKE 'pattern'; 

    例如,如果要查询所有名字不包含"三"的用户,可以使用以下语句:

    SELECT * FROM users WHERE NOT name LIKE '%三%'; 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!