如何在mysql中使用WHERE条件_mysql条件过滤操作

来源:这里教程网 时间:2026-02-28 20:26:38 作者:

在 MySQL 中,WHERE 子句用于过滤查询结果中满足特定条件的记录。它通常跟在 SELECTUPDATEDELETE 语句之后,用来限定操作的数据范围。

基本语法

SELECT 列名 FROM 表名 WHERE 条件;
UPDATE 表名 SET 列 = 值 WHERE 条件;
DELETE FROM 表名 WHERE 条件;

其中,“条件”是一个表达式,返回真或假,只有满足条件的行才会被选中或修改。

常见的 WHERE 条件操作符

比较操作符:

=:等于(如:age = 25) !=:不等于(如:status != 'inactive') >:大于(如:price > 100) :小于(如:score >=:大于等于 :小于等于

逻辑操作符:

AND:多个条件同时成立(如:age > 18 AND city = '北京') OR:任一条件成立即可 NOT:取反(如:NOT status = 'deleted')

其他常用关键字:

IN:匹配列表中的任意一个值(如:id IN (1, 3, 5)) NOT IN:不在指定列表中 BETWEEN ... AND ...:范围查询(如:age BETWEEN 18 AND 65) LIKE:模糊匹配(如:name LIKE '张%' 匹配姓张的名字) IS NULL / IS NOT NULL:判断是否为空值

使用示例

查询年龄为 25 的用户:

SELECT * FROM users WHERE age = 25;

查询北京且状态为激活的用户:

SELECT * FROM users WHERE city = '北京' AND status = 'active';

删除 ID 在 10 到 20 之间的记录:

DELETE FROM users WHERE id BETWEEN 10 AND 20;

查找姓名以“李”开头的用户:

SELECT * FROM users WHERE name LIKE '李%';

查找邮箱为空的用户:

SELECT * FROM users WHERE email IS NULL;

注意事项

字符串值要用单引号括起来,数字不需要 日期也建议用单引号,并使用标准格式(如 '2024-01-01') 避免在 WHERE 条件中对字段使用函数,会影响索引性能(如 WHERE YEAR(create_time) = 2024) 合理使用括号可以明确逻辑优先级(如:status = 'active' AND (age 60))

基本上就这些。掌握 WHERE 条件写法,能让你更精准地操作数据。

相关推荐

热文推荐