当使用MySQL查询时,有时需要排除多个特定的值,下面将详细介绍如何在MySQL查询中排除多个值的方法。

富顺网站建设公司创新互联公司,富顺网站设计制作,有大型网站制作公司丰富经验。已为富顺上千余家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的富顺做网站的公司定做!
使用NOT IN子句
使用NOT IN子句可以轻松地排除多个特定值,以下是一个示例:
SELECT column1, column2, ... FROM table_name WHERE column_name NOT IN (value1, value2, ...);
在上面的查询中,column_name是要排除的列名,value1, value2, ...是多个要排除的值,通过在NOT IN子句中列出这些值,可以排除它们并返回其他行。
单元表格示例
假设我们有一个名为students的表,其中包含以下列:id, name, age, city,现在,我们想要选择除特定城市之外的所有学生记录。
| id | name | age | city |
| 1 | Alice | 20 | New York |
| 2 | Bob | 22 | London |
| 3 | Charlie | 19 | Paris |
| 4 | David | 21 | New York |
| 5 | Emily | 23 | Tokyo |
如果我们想选择除纽约和东京之外的所有学生记录,可以使用以下查询:
SELECT * FROM students WHERE city NOT IN ('New York', 'Tokyo');
执行上述查询后,将返回以下结果:
| id | name | age | city |
| 2 | Bob | 22 | London |
| 3 | Charlie | 19 | Paris |
| 5 | Emily | 23 | Tokyo |
可以看到,纽约和东京的记录已被排除。
使用NOT LIKE子句和通配符
另一种排除多个特定值的方法是使用NOT LIKE子句和通配符,以下是一个示例:
SELECT column1, column2, ... FROM table_name WHERE column_name NOT LIKE '%value1%' AND column_name NOT LIKE '%value2%';
在上面的查询中,column_name是要排除的列名,value1, value2, ...是多个要排除的值,通过使用通配符%来匹配任意字符序列,可以排除包含这些值的行,注意,为了确保排除多个值,使用了两个NOT LIKE条件。
单元表格示例
假设我们有一个名为products的表,其中包含以下列:id, name, category,现在,我们想要选择除了特定类别之外的每个产品名称。
| id | name | category |
| 1 | Apple | Fruit |
| 2 | Banana | Fruit |
| 3 | Carrot | Vegetable |
| 4 | Tomato | Vegetable |
| 5 | Cheese | Dairy |
| 6 | Milk | Dairy |
| 7 | Bread | Bakery |
| 8 | Butter | Bakery |
| 9 | Rice | Grain |
| 10 | Noodles | Grain |
如果我们想选择除了水果和面包之外的每个产品名称,可以使用以下查询:
SELECT name FROM products WHERE category NOT LIKE '%Fruit%' AND category NOT LIKE '%Bakery%';
执行上述查询后,将返回以下结果:
| name | category |
| Carrot | Vegetable |
| Tomato | Vegetable |
| Cheese | Dairy |
| Milk | Dairy |
| Rice | Grain |
| Noodles | Grain |
网站栏目:MySQL查询排除多个值的方法
URL分享:http://www.jxjierui.cn/article/copsgoh.html


咨询
建站咨询
