mysql contains 不包含

mysql contains 不包含

mysql contains 不包含

在MySQL数据库中,我们经常会用到两个关键字来筛选查询结果,分别是LIKEINLIKE用于模糊匹配字符串,而IN则用于匹配一系列的值。但是在某些情况下,我们需要查询不包含某个特定值的结果,这时就需要用到NOT LIKENOT IN,或者使用NOT EXISTS来实现。

NOT LIKE

NOT LIKE用于查询不包含特定字符串的结果。例如,如果我们想要查询所有名字中不包含”John”的用户:

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

这个查询会返回所有名字中不包含”John”的用户信息。关键点在于NOT LIKE '%John%'这个条件,它表示不包含”John”的字符串。

NOT IN

NOT IN用于查询不包含在指定值列表中的结果。例如,如果我们想要查询所有不属于某个组的用户:

SELECT * FROM users
WHERE group_id NOT IN (1, 2, 3);

这个查询会返回所有group_id不在(1, 2, 3)这个值列表中的用户信息。

NOT EXISTS

除了使用NOT IN外,还可以使用NOT EXISTS来实现查询不包含特定值的结果。例如,如果我们想要查询所有没有订单的用户:

SELECT * FROM users u
WHERE NOT EXISTS (
    SELECT 1 FROM orders o
    WHERE u.user_id = o.user_id
);

这个查询会返回所有users表中没有对应订单的用户信息。NOT EXISTS子查询会检查orders表中是否存在与users表中相同user_id的记录,如果不存在则返回true

总结

在MySQL中,要查询不包含特定值的结果,可以使用NOT LIKENOT INNOT EXISTS。这些关键字可以帮助我们更精准地筛选出需要的数据,提高查询效率。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程